数据库备份与还原:mysqldump,source
*数据库备份*
1、备份方法一:适用于myslam表:
直接将tb_name.frm、tb_name.myd、tb_name.myi三个文件保存,备份即可。
需要的时候直接解压到,移动到相应的数据库目录内即可。
【注意】如果是同样的方法,处理的innodb表结构文件。则使用showtables时也可以看到但是不能使用的表。
2、备份方法二:通用方案(mysqldump)
思路是:将建表结构,与插入数据的sql语句生成并保存,下次如果需要该结构和数据,直接将数据语句执行即可。
利用MySQL提供的工具完成的:不是sql语言的一部分。
不需要在MySQL命令行客户端执行,直接运行即可。
例子:mysqldump -uroot -p test > /test.sql #以输入密码的方式连接数据库并将数据库test保存在“/”目录下,命 名为test.sql,打开该文件,其中都是sql语句。
mysqldump test > /test.sql #如果没有设置数据库密码,则使用这条命令。
【注意】以文本文件打开test.sql,里面都是sql语句。cat test.sql或者more test.sql或者less test.sql
3、常用的备份操作:(在Windows中CMD操作或者Linux命令行操作)
3.1备份整个数据内的表:mysqldump -uroot -p test > /test.sql #test为即将备份的数据库,/test.sql为保存在/目录下,以test.sql为文件名。
3.2备份数据库中某一个表:mysqldump -uroot -p test stu_info > /test_stu_info.sql #stu_info为数据库test里的一个表
3.3备份数据库中多个表:mysqldump -uroot -p test stu_info tb_name1 tb_name2 ...> /test_name.sql
=============================================================================================================================
*数据库还原*
1、将备份的数据库还原:思路就是将刚生成的sql语句再次执行即可。
如何执行保存在文件内的sql语句:
使用source指令,可以指定需要指定sql语句的源代码文件。
语法:source 备份数据库文件位置;
例子:
1)第一步:use bak; #新建数据库bak
2)第二步:source /test.sql; #在新建数据库bak中执行还原source命令
3)第三步:检查是否成功还原test.sql
show tables;