• 18.6 数据库的备份及恢复
    • 为您推荐一些与本文相关的文章:

    18.6 数据库的备份及恢复

    前文提到,本书的技术主线是Linux系统的运维方向,不会对数据库管理系统的操作进行深入的讲解,因此大家掌握了上面这些基本的数据库操作命令之后就足够了。下面要讲解的是数据库的备份以及恢复,这些知识比较实用,希望大家能够掌握。

    mysqldump命令用于备份数据库数据,格式为“mysqldump [参数] [数据库名称]”。其中参数与mysql命令大致相同,-u参数用于定义登录数据库的账户名称,-p参数代表密码提示符。下面将linuxprobe数据库中的内容导出成一个文件,并保存到root管理员的家目录中:

    1. [root@linuxprobe ~]# mysqldump -u root -p linuxprobe > /root/linuxprobeDB.dump
    2. Enter password:此处输入root管理员在数据库中的密码

    然后进入MariaDB数据库管理系统,彻底删除linuxprobe数据库,这样mybook数据表单也将被彻底删除。然后重新建立linuxprobe数据库:

    1. MariaDB [(none)]> DROP DATABASE linuxprobe;
    2. Query OK, 1 row affected (0.04 sec)
    3. MariaDB [(none)]> SHOW databases;
    4. +--------------------+
    5. | Database |
    6. +--------------------+
    7. | information_schema |
    8. | mysql |
    9. | performance_schema |
    10. +--------------------+
    11. 3 rows in set (0.02 sec)
    12. MariaDB [(none)]> CREATE DATABASE linuxprobe;
    13. Query OK, 1 row affected (0.00 sec)

    接下来是见证数据恢复效果的时刻!使用输入重定向符把刚刚备份的数据库文件导入到mysql命令中,然后执行该命令。接下来登录到MariaDB数据库,就又能看到linuxprobe数据库以及mybook数据表单了。数据库恢复成功!

    1. [root@linuxprobe ~]# mysql -u root -p linuxprobe < /root/linuxprobeDB.dump
    2. Enter password: 此处输入root管理员在数据库中的密码值
    3. [root@linuxprobe ~]# mysql -u root -p
    4. Enter password: 此处输入root管理员在数据库中的密码值
    5. MariaDB [(none)]> use linuxprobe;
    6. Reading table information for completion of table and column names
    7. You can turn off this feature to get a quicker startup with -A
    8. Database changed
    9. MariaDB [linuxprobe]> SHOW tables;
    10. +----------------------+
    11. | Tables_in_linuxprobe |
    12. +----------------------+
    13. | mybook |
    14. +----------------------+
    15. 1 row in set (0.05 sec)
    16. MariaDB [linuxprobe]> DESCRIBE mybook;
    17. +-------+----------+------+-----+---------+-------+
    18. | Field | Type | Null | Key | Default | Extra |
    19. +-------+----------+------+-----+---------+-------+
    20. | name | char(15) | YES | | NULL | |
    21. | price | int(11) | YES | | NULL | |
    22. | pages | int(11) | YES | | NULL | |
    23. +-------+----------+------+-----+---------+-------+
    24. 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学习资料以及红帽考试资料等优质学习资源。