一.mysql命令行
备份命令
备份全部数据库的数据和结构
mysqldump -uroot -p123456 -A >/temp/all.sql
备份全部数据库的结构(加 -d 参数)
mysqldump -uroot -p123456 -A-d>/temp/all_struct.sql
备份全部数据库的数据(加 -t 参数)
mysqldump -uroot -p123456 -A-t>/temp/all_data.sql
备份单个数据库的数据和结构(,数据库名mydb)
mysqldump -uroot-p123456 mydb>/temp/mydb.sql
备份单个数据库的结构
mysqldump -uroot -p123456 mydb-d>F:\mydb.sql
6.备份单个数据库的数据
mysqldump -uroot -p123456 mydb-t>F:\mydb.sql
7.备份多个表的数据和结构(数据,结构的单独备份方法与上同)
mysqldump -uroot -p123456 mydb t1 t2>f:\multables.sql
8.一次备份多个数据库
mysqldump -uroot -p123456 --databases db1 db2>f:\muldbs.sql
还原命令
1.还原全部数据库:
(1) mysql命令行:
mysql>source f:\all.sql
(2) 系统命令行:
mysql -uroot -p123456 <f:\all.sql
2.还原单个数据库(需指定数据库)
(1)
mysql>use mydb
mysql>source f:\mydb.sql
(2)
mysql -uroot -p123456 mydb <f:\mydb.sql
3.还原单个数据库的多个表(需指定数据库)
(1)
mysql>use mydb
mysql>source f:\multables.sql
(2)
mysql -uroot -p123456 mydb<f:\multables.sql
4.还原多个数据库,(一个备份文件里有多个数据库的备份,此时不需要指定数据库)
(1) mysql命令行:
mysql>source f:\muldbs.sql
(2) 系统命令行:
mysql -uroot -p123456<f:\muldbs.sql
二.mysql主从重新同步
1、登录主库服务器,进入mysql
mysql -uroot -pR00t1@3
2、锁定主数据库
# 执行flush tables with read lock 的那个命令行控制台不能关闭!!!
FLUSH TABLES WITH READ LOCK;
3、查看主库状态:
show master status;
4.在主数据库执行备份命令
# 一致性备份
mysqldump -uroot -p密码 -A --master-data=2 --single-transaction >/temp/all.sql
5.将备份的文件scp发送到从服务器
scp all.sql root@ip:/temp/all.sql
6.解锁主数据库
UNLOCK TABLES;
7.在从数据库执行恢复命令
# 在mysl命令行执行
source /temp/all.sql
8.重新开始从数据库
stop slave;
reset slave;
change master to master_host='ip',master_user='root',master_password='密码',master_log_file='mysql-bin.xxx',master_log_pos=836892;
start slave;