备份数据库,备份表
- 导出数据库,表结构+数据
# mysqldump -h数据库地址 -u用户名 -p密码 数据库名 > 导出的文件名
> mysqldump -hlocalhost -uroot -p123456 db_name > ./db_name.sql
- 导出数据库,仅表结构。
-d
不导出数据只导出结构,--add-drop-table
在每个create语句之前增加一个drop table
> mysqldump -hlocalhost -uroot -p123456 -d --add-drop-table db_name > ./db_name.sql
- 导出一个表,数据+表结构(不加
-d
参数)
mysqldump -h数据库地址 -u用户名 -p密码 数据库名 表名 > 导出的文件名
# mysqldump -hlocalhost -uroot -p123456 db_name table_name > ./db_name_table_name.sql
# 带where条件的mysqldump
> mysqldump -hlocalhost -uroot -p123456 test auth_group --where="id>100" > ./test_auth_group.sql
还原,执行备份的SQL文件
- 在mysql命令行内使用source命令
#进入mysql数据库控制台
> mysql -uroot -p123456
mysql> use test
# mysql> set names utf8; #先确认编码,如果不设置可能会出现乱码,注意不是UTF-8
mysql> source /home/mysql/test.sql #使用source命令,后面参数为脚本文件
- 在Linux命令行使用 -e 参数
cat /home/mysql/test.sql | mysql -uroot -p123456 -e
网友评论