zoukankan      html  css  js  c++  java
  • Mysql数据库(九)备份与恢复

      一、数据备份

      1.使用mysqldmp命令备份

      (1)备份一个数据库

    mysqldump -u root -p dbname table1 table2 ... > D:BackName.sql
    

      (2)备份多个数据库

    mysqldump -u root -p --databases dbname1 dbname2 > D:BackName.sql
    

      (3)备份所有数据库

    mysqldump -u root -p --all-databases > D:BackName.sql
    

      2.直接复制整个数据库目录(先找到数据库文件的保存位置,然后将数据库文件直接复制出来)

    show variables like '%datadir%';
    

      3.使用mysqlhotcopy工具快速备份(是一个Perl脚本,主要在Linux操作系统下使用,只能备份MyLSAM类型的表)

      二、数据恢复

      1.使用mysql命令还原

    mysql -u root -p db_librarybak < D:db_library.sql
    

      2.直接复制到数据库目录(对InnoDB类型的表不可用)

      三、数据库迁移

      1.MySQL数据库之间的迁移

    mysqldump -h host1 -u root --password=password1 --all-databases | 
    mysql -h host2 -u root --password=password2
    

      2.不同数据库之间的迁移

      (1)在Windows下,通常可以使用MyODBC实现MySQL数据库与SQL Server之间的迁移。

      (2)将MySQL数据库迁移到Oracle数据库时,需要使用mysqldump命令先导出SQL文件,再手动修改SQL文件中的CREATE语句。

      四、表的导出和导入

      1.用SELECT...INTO OUTFILE导出文本文件

      (1)指定的目标路径只能是MySql的secure_file_priv参数所指定的位置。

    mysql> select @@secure_file_priv
        -> ;
    +-------------------------------------------------+
    | @@secure_file_priv                              |
    +-------------------------------------------------+
    | C:mysoftwareJavamysql-5.7.20-winx64Uploads |
    +-------------------------------------------------+
    1 row in set (0.00 sec)
    

      (2)使用SELECT...INTO OUTFILE导出文本文件

    mysql> use db_library;
    Database changed
    mysql> select * from tb_bookinfo INTO OUTFILE 'C:/mysoftware/Java/mysql-5.7.20-winx64/Uploads/bookinfo.txt';
    Query OK, 3 rows affected (0.01 sec)
    

     

      2.用mysqldump命令导出文本文件

    C:UsersBigJun>mysqldump -u root -p -T "C:/mysoftware/Java/mysql-5.7.20-winx64/Uploads" db_library tb_bookinfo
    Enter password: *********
    

     

      mysqldump命令还可以导出xml格式的文件。

    C:UsersBigJun>mysqldump -u root -p --xml  db_library tb_bookinfo > D:
    ame.xml
    Enter password: *********
    

      3.用mysql命令导出文本文件

    C:UsersBigJun>mysql -u root -p -e "SELECT * FROM tb_bookinfo" db_library > D:/bookinfo3.txt
    Enter password: *********
    
    mysql -u root -p --xml -e "SELECT * FROM tb_bookinfo" db_library > D:/bookinfo3.xml
    
    mysql -u root -p --html -e "SELECT * FROM tb_bookinfo" db_library > D:/bookinfo3.html
    
  • 相关阅读:
    支付弹出窗口被拦截解决办法
    实现Bootstrap Carousel Fade Transition 淡入淡出效果
    SVN Global ignore pattern 忽略文件正则后缀
    css 不确定元素宽度的水平居中
    Android Studio运行程序,检测不到(夜神、Genymotion)模拟器
    HttpClient
    Eclipse中复制android项目后要改动的地方
    Eclipse快捷键
    Xml解析之PULL解析 例2
    Xml解析之PULL解析 例1
  • 原文地址:https://www.cnblogs.com/BigJunOba/p/8880239.html
Copyright © 2011-2022 走看看