一、数据备份
1、使用mysqldump命令备份
mysqldump命令将数据库中的数据备份成一个文本文件。表的结构和表中的数据将存储在生成的文本文件中。
mysqldump命令的工作原理很简单。它先查出需要备份的表的结构,再在文本文件中生成一个CREATE语句。然后,将表中的所有记录转换成一条INSERT语句。然后通过 这些语句,就能够创建表并插入数据。
2、备份一个数据库
mysqldump基本语法:
mysqldump -u username -p dbname table1 table2 ...-> BackupName.sql
其中:dbname参数表示数据库的名称;
table1和table2参数表示需要备份的表的名称,为空则整个数据库备份;
BackupName.sql参数表设计备份文件的名称,文件名前面可以加上一个绝对路径。通常将数据库被分成一个后缀名为sql的文件;
eg: 使用root用户备份test数据库下的person表
mysqldump -u root -p test person > D:\backup.sql
生成的脚本文件的开头会记录MySQL的版本、备份的主机名和数据库名。文件中以“--”开头的都是SQL语言的注释,以"/*!40101"等形式开头的是与MySQL有关的注释。 40101是MySQL数据库的版本号,如果MySQL的版本比1.11高,则/*!40101和*/之间的内容就被当做SQL命令来执行,如果比4.1.1低就会被当做注释。
3.使用select...into outfile
eg:select * from test into outfile 'mysql.txt'
4、备份多个数据库
语法:mysqldump -u username -p --databases dbname2 dbname2 > Backup.sql加上了--databases选项,然后后面跟多个数据库
eg: mysqldump -u root -p --databases test mysql > D:\backup.sql
5、备份所有数据库
mysqldump命令备份所有数据库的语法如下:mysqldump -u username -p -all-databases > BackupName.sql
示例:mysqldump -u -root -p -all-databases > D:\all.sql
6.导出数据直接导入到远程服务器上(两台服务器可以相互访问)
mysqldump -u root -p database_name | mysql -h other-host.com database_name
1、还原使用mysqldump命令备份的数据库的语法如下:
mysql -u root -p [dbname] < backup.sql
示例:
mysql -u root -p < C:\backup.sql