利用 mysqldump 命令进行数据备份
mysqldump命令将数据库中的数据备份成一个文本文件。表的结构和表中的数据将存储在生成的文本文件中。
mysqldump命令的工作原理很简单。它先查出需要备份的表的结构,再在文本文件中生成一个CREATE语句。然后,将表中的所有记录转换成一条INSERT语句。然后通过这些语句,就能够创建表并插入数据。
Windows环境下数据库的备份和还原:
1. 开始菜单 | 运行 | cmd |进入MySQL目录下的bin文件夹:切换到 MySQL中到bin文件夹的目录(或者直接将windows的环境变量path中添加该目录)
cd C:\Program Files\MySQL\MySQL Server 4.1\bin
或
cd \
1.1. 备份一个数据库:输入“mysqldump –u root –p 数据库名>备份文件名.sql”,单击回车,输入密码后,即可备份相应的数据库
语法:mysqldump -u username -p dbname > BackupName.sql
语法:mysqldump -u username -p dbname table1 table2 ... > D:BackupName.sql
其中:
dbname 表示数据库的名称;
table1和table2 表示需要备份的表的名称,为空则整个数据库备份;
BackupName.sql 表示备份文件的名称,文件名可以是一个绝对路径。通常将数据库被分成一个后缀名为sql的文件;
生成的结果文件如下:
文件的开头会记录MySQL的版本、备份的主机名和数据库名。
文件中以“--”开头的都是SQL语言的注释,以‘/*!40101’等形式开头的是与MySQL有关的注释。40101是MySQL数据库的版本号,如果MySQL的版本比4.11高,则‘/*!40101和*/’之间的内容就被当做SQL命令来执行,如果比4.1.1低就会被当做注释。
1.2. 备份多个数据库:上面的命令加上了 –databases 选项,然后后面跟多个数据库名
语法:mysqldump -u username -p --databases dbname2 dbname2 > Backup.sql
1.3. 备份所有数据库:
mysqldump -u username -p -all-databases > BackupName.sql
2.还原数据库:
2.1 登录mysql;
2.2 查看现有的数据库,建立需要的新数据库;
2.3 使用目标数据库,导入文件。
1. mysql.exe -h主机名 -u用户名 -p密码; (登录mysql)
2. show databases; (查看现有的数据库)
3. create database 数据库名; (建立需要的新数据库)
4. use 数据库名; (使用目标数据库)
5. source 导入的文件名;