18.6 数据库的备份及恢复
前文提到,本书的技术主线是Linux系统的运维方向,不会对数据库管理系统的操作进行深入的讲解,因此大家掌握了上面这些基本的数据库操作命令之后就足够了。下面要讲解的是数据库的备份以及恢复,这些知识比较实用,希望大家能够掌握。
mysqldump命令用于备份数据库数据,格式为“mysqldump [参数] [数据库名称]”。其中参数与mysql命令大致相同,-u参数用于定义登录数据库的账户名称,-p参数代表密码提示符。下面将linuxprobe数据库中的内容导出成一个文件,并保存到root管理员的家目录中:
- [root@linuxprobe ~]# mysqldump -u root -p linuxprobe > /root/linuxprobeDB.dump
- Enter password:此处输入root管理员在数据库中的密码
然后进入MariaDB数据库管理系统,彻底删除linuxprobe数据库,这样mybook数据表单也将被彻底删除。然后重新建立linuxprobe数据库:
- MariaDB [(none)]> DROP DATABASE linuxprobe;
- Query OK, 1 row affected (0.04 sec)
- MariaDB [(none)]> SHOW databases;
- +--------------------+
- | Database |
- +--------------------+
- | information_schema |
- | mysql |
- | performance_schema |
- +--------------------+
- 3 rows in set (0.02 sec)
- MariaDB [(none)]> CREATE DATABASE linuxprobe;
- Query OK, 1 row affected (0.00 sec)
接下来是见证数据恢复效果的时刻!使用输入重定向符把刚刚备份的数据库文件导入到mysql命令中,然后执行该命令。接下来登录到MariaDB数据库,就又能看到linuxprobe数据库以及mybook数据表单了。数据库恢复成功!
- [root@linuxprobe ~]# mysql -u root -p linuxprobe < /root/linuxprobeDB.dump
- Enter password: 此处输入root管理员在数据库中的密码值
- [root@linuxprobe ~]# mysql -u root -p
- Enter password: 此处输入root管理员在数据库中的密码值
- MariaDB [(none)]> use linuxprobe;
- Reading table information for completion of table and column names
- You can turn off this feature to get a quicker startup with -A
- Database changed
- MariaDB [linuxprobe]> SHOW tables;
- +----------------------+
- | Tables_in_linuxprobe |
- +----------------------+
- | mybook |
- +----------------------+
- 1 row in set (0.05 sec)
- MariaDB [linuxprobe]> DESCRIBE mybook;
- +-------+----------+------+-----+---------+-------+
- | Field | Type | Null | Key | Default | Extra |
- +-------+----------+------+-----+---------+-------+
- | name | char(15) | YES | | NULL | |
- | price | int(11) | YES | | NULL | |
- | pages | int(11) | YES | | NULL | |
- +-------+----------+------+-----+---------+-------+
- 3 rows in set (0.02 sec)
出现问题?大胆提问!
因读者们硬件不同或操作错误都可能导致实验配置出错,请耐心再仔细看看操作步骤吧,不要气馁~
Linux技术交流请加A群:560843(满),B群:340829(推荐),C群:463590(推荐),点此查看全国群。
*本群特色:通过口令验证确保每一个群员都是《Linux就该这么学》的读者,答疑更有针对性,不定期免费领取定制礼品。
本章节的复习作业(答案就在问题的下一行哦,用鼠标选中即可看到的~)
1.RHEL 7系统为何选择使用MariaDB替代MySQL数据库管理系统?
答:因为MariaDB由开源社区进行维护,且不受商业专利限制。
2.初始化MariaDB或MySQL数据库管理系统的命令是什么?
答:是mysql_secure_installation命令,建议每次安装MariaDB或MySQL数据库管理系统后都执行这条命令。
3.用来查看已有数据库或数据表单的命令是什么?
答:要查看当前已有的数据库列表,需执行SHOW databases;命令;要查看已有的数据表单列表,则需执行SHOW tables;命令。
4.切换至某个指定数据库的命令是什么?
答:执行“use 数据库名称”命令即可切换成功。
5.若想针对某个账户进行授权或取消授权操作,应该执行什么命令?
答:针对账户进行授权,需执行GRANT命令;取消授权则需执行REVOKE命令。
6.若只想查看mybook表单中的name字段,应该执行什么命令?
答:应执行SELECT name FROM mybook命令。
7.若只想查看mybook表单中价格大于75元的图书信息,应该执行什么命令?
答:应执行SELECT * FROM mybook WHERE price>75命令。
8. 要想把linuxprobe数据库中的内容导出为一个文件(保存到root管理员的家目录中),应该执行什么命令?
答:应执行mysqldump -u root -p linuxprobe > /root/linuxprobeDB.dump命令。
本文原创地址:https://www.linuxprobe.com/chapter-18.html 编辑:刘遄,审核员:暂无
为您推荐一些与本文相关的文章:
- OpenStack Mitaka正式发布
- CI 失败的原因与解决办法
- 40 个 Windows 设备驱动程序包含提升权限的漏洞
- Swift 5微博公布将使用UTF-8作为首选字符串编码
- OBS Studio 24.0 RC1 发布 – 有大惊喜
- Ubuntu Budgie Remix 16.04,2018年8月卒
- 关于DNS 和根证书你了解多少?
- 第12章 使用Samba或NFS实现文件共享。
- 黑客如何破解密码?
- IPv6应用普及,任重而道远
转载必需保留本文链接:https://www.linuxprobe.com/chapter-18.html
本文依据CC-BY-NC-SA 3.0协议发布,竭诚为读者提供Linux视频教程、Linux学习资料以及红帽考试资料等优质学习资源。