简介
1、mysql逻辑备份工具,作用于服务器本地,不需要额外安装插件
2、可以单表备份,备份为sql文件形式、方便,在多个场景通用
3、可通过shell命令实现定时备份,但备份时如果用户有操作,容易造成脏数据
4、将数据库备份到服务器本地sql文件,属于逻辑备份,不受数据库引擎限制
5、只能全量备份,恢复的话只能覆盖原有数据,或者恢复到新的表中,再手动处理
6、单线程,数据量大时备份耗时较长,且锁表容易引对不支持事务的表造成影响
安装
[root@centos7-images-base sa]# mysqldump --help
bash: mysqldump: command not found
问题解决:建立软连接ln -fs /usr/local/mysql/bin/mysqldump /usr/bin
备份数据
[root@centos7-images-base sa]# mysqldump -u root -p --databases testback > testback_13_184.sql
Enter password:
mysqldump: Got error: 2002: Can’t connect to local MySQL server through socket ‘/tmp/mysql.sock’ (2) when trying to connect
问题解决:
1.找到正确的套接字的路径:
[root@centos7-images-base sa]# netstat -ln | grep mysql
unix 2 [ ACC ] STREAM LISTENING 27003 /data/mysql/data/mysql.sock
2.执行新命令
mysqldump --socket=/data/mysql/data/mysql.sock -u root -p --databases testback > testback_13_184.sql
还原数据库
1.登陆数据库
mysql -uroot -p
2.切换到需要导入的库
use testback;
3.导入数据
source /data/mysqldumpback/testback_13_184.sql