MySQL备份与还原

一、备份与还原

    /***************************样例表***************************/
    CREATE DATABASE booksDB;
    use booksDB;

    CREATE TABLE books
    (
      bk_id  INT NOT NULL PRIMARY KEY,
      bk_title VARCHAR(50) NOT NULL,
      copyright YEAR NOT NULL
    );
    INSERT INTO books
    VALUES (11078, 'Learning MySQL', 2010),
    (11033, 'Study Html', 2011),
    (11035, 'How to use php', 2003),
    (11072, 'Teach youself javascript', 2005),
    (11028, 'Learing C++', 2005),
    (11069, 'MySQL professional', 2009),
    (11026, 'Guide to MySQL 5.5', 2008),
    (11041, 'Inside VC++', 2011);

    CREATE TABLE authors
    (
      auth_id     INT NOT NULL PRIMARY KEY,
      auth_name  VARCHAR(20),
     auth_gender CHAR(1)
    );
    INSERT INTO authors  
    VALUES (1001, 'WriterX' ,'f'),
    (1002, 'WriterA' ,'f'),
    (1003, 'WriterB' ,'m'),
    (1004, 'WriterC' ,'f'),
    (1011, 'WriterD' ,'f'),
    (1012, 'WriterE' ,'m'),
    (1013, 'WriterF' ,'m'),
    (1014, 'WriterG' ,'f'),
    (1015, 'WriterH' ,'f');

    CREATE TABLE authorbook
    (
      auth_id  INT NOT NULL,
      bk_id   INT NOT NULL,
      PRIMARY KEY (auth_id, bk_id),
      FOREIGN KEY (auth_id) REFERENCES authors (auth_id),
      FOREIGN KEY (bk_id) REFERENCES books (bk_id)
    );

    INSERT INTO authorbook
    VALUES (1001, 11033), (1002, 11035), (1003, 11072), (1004, 11028),
    (1011, 11078), (1012, 11026), (1012, 11041), (1014, 11069);

    /***************************样例表***************************/
    
    1、使用mysqldump命令备份数据库中的所有表
    2、备份booksDB数据库中的books表
    3、使用mysqldump备份booksDB和test数据库
    4、使用mysqldump备份服务器中的所有数据库
    5、使用mysql命令还原第二题导出的book表
    6、进入数据库使用source命令还原第二题导出的book表

mysqldump -u root -p --all-databases > /backupDB/allDBbackup.sql
Enter password: 

mysqldump -u <username> -p <databasename> books > books_backup.sql

mysqldump -u <username> -p --databases booksDB test > databases_backup.sql

mysqldump -u <username> -p --all-databases > all_databases_backup.sql

mysql -u <username> -p <databasename> < books_backup.sql

source books_backup.sql;

备份数据库:

还原数据库:

总结: 备份和还原是MySQL数据库管理中至关重要的操作。备份可以通过使用mysqldump命令、物理备份或第三方工具来完成。还原可以使用mysql命令或将物理备份文件放回服务器的相应位置来完成。备份和还原的方法选择取决于具体需求和情况。在执行备份和还原操作之前,请确保理解操作的影响并遵循最佳实践,如定期备份、测试还原过程以及保护备份文件的安全性。

  1. 使用mysqldump命令备份:mysqldump是MySQL提供的一个用于备份数据库的命令行工具。通过运行mysqldump命令,可以将数据库的结构和数据导出到一个文件中。例如,可以使用以下命令备份一个数据库:

    mysqldump -u <username> -p <databasename> > backup.sql
    

  2. <username> 是数据库用户名,<databasename> 是要备份的数据库名称。执行命令后,将提示输入密码,然后备份文件 backup.sql 将包含数据库的结构和数据。

  3. 物理备份:物理备份是直接复制数据库文件的方式进行备份。可以停止MySQL服务器并将数据库文件复制到其他位置来完成备份。这种备份方法比较简单,但需要停止数据库的运行。

  4. 使用mysql命令还原:可以使用mysql命令行工具将备份文件中的数据导入到MySQL服务器中。例如,可以使用以下命令还原数据库:

  5. 第三方工具:还有许多第三方工具可用于备份MySQL数据库。这些工具提供了更多的备份选项和自动化功能,可以根据需求选择适合的工具。

    mysql -u <username> -p <databasename> < backup.sql
    

  6. <username> 是数据库用户名,<databasename> 是要还原的数据库名称。执行命令后,将提示输入密码,并将备份文件 backup.sql 中的数据导入到指定的数据库中。

  7. 导入物理备份:如果使用物理备份进行了数据库的完整复制,可以将复制的数据库文件直接放回MySQL服务器的相应位置,然后启动数据库服务器即可完成还原。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

dlluo

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值