MySQL数据库备份&恢复(备份恢复)【备份策略一:直接拷贝数据库文件】

备份策略一:直接拷贝数据库文件

当你使用直接备份方法时,必须保证表不在被使用。如果服务器在你正在拷贝一个表时改变它,拷贝就失去意义。保证你的拷贝完整性的最好方法是关闭服务器,拷贝文件,然后重启服务器。
当你完成了备份时,需要重启服务器(如果关闭了它)或释放加在表上的锁定(如果你让服务器运行)。要用直接拷贝文件把一个数据库从一台机器拷贝到另一台机器上,只是将文件拷贝到另一台服务器主机的适当数据目录下即可。
要确保文件是MyIASM格式或两台机器有相同的硬件结构,否则你的数据库在另一台主机上有奇怪的内容。

(文件系统备份工具 cp)(适合小型数据库,是最可靠的)

  1. 停止MySQL服务器
[root@localhost ~]# systemctl stop mysqld
  1. 直接复制整个数据库目录。注意:使用这种方法最好还原到相同版本服务器中,不同版本可能不兼容
[root@localhost ~]# cd /var/lib/mysql		//切换到数据库目录
[root@localhost mysql]# ll
total 110684
-rw-r-----. 1 mysql mysql       56 Mar 26 14:37 auto.cnf
-rw-------. 1 mysql mysql     1680 Mar 26 14:37 ca-key.pem
-rw-r--r--. 1 mysql mysql     1112 Mar 26 14:37 ca.pem
-rw-r--r--. 1 mysql mysql     1112 Mar 26 14:37 client-cert.pem
-rw-------. 1 mysql mysql     1676 Mar 26 14:37 client-key.pem
drwxr-x---. 2 mysql mysql       94 Apr 22 14:40 db
-rw-r-----. 1 mysql mysql      326 Apr 22 15:05 ib_buffer_pool
-rw-r-----. 1 mysql mysql 12582912 Apr 22 15:05 ibdata1
-rw-r-----. 1 mysql mysql 50331648 Apr 22 15:05 ib_logfile0
-rw-r-----. 1 mysql mysql 50331648 Mar 26 14:37 ib_logfile1
-rw-r-----. 1 mysql mysql      262 Apr 22 10:15 localhost.log
-rw-r-----. 1 mysql mysql      903 Apr 22 14:03 localhost-slow.log
drwxr-x---. 2 mysql mysql     4096 Mar 26 14:37 mysql
-rw-r-----. 1 mysql mysql     2857 Apr 22 15:05 mysql-bin.000001
-rw-r-----. 1 mysql mysql       32 Apr 22 14:10 mysql-bin.index
-rw-r-----. 1 mysql mysql     7980 Apr 22 10:00 mysqld.log
drwxr-x---. 2 mysql mysql     8192 Mar 26 14:37 performance_schema
-rw-------. 1 mysql mysql     1680 Mar 26 14:37 private_key.pem
-rw-r--r--. 1 mysql mysql      452 Mar 26 14:37 public_key.pem
-rw-r--r--. 1 mysql mysql     1112 Mar 26 14:37 server-cert.pem
-rw-------. 1 mysql mysql     1676 Mar 26 14:37 server-key.pem
drwxr-x---. 2 mysql mysql     8192 Mar 26 14:37 sys
drwxr-x---. 2 mysql mysql       54 Apr 22 11:14 test

[root@localhost mysql]# tar czf ~/db.tar.gz *		//将此目录的所有内容打包压缩到家目录
[root@localhost ~]# scp db.tar.gz 192.168.25.133:~		//复制到133服务器的家目录
root@192.168.25.133's password: 
db.tar.gz                                      100% 9100     4.8MB/s   00:00    

[root@localhost ~]# ll db.tar.gz 		//133服务器家目录内查看
-rw-r--r-- 1 root root 9100 Apr 22 15:29 db.tar.gz
  1. 目标服务器上还原。
[root@localhost ~]# rm -rf /var/lib/mysql/*		//清空133服务器上原本数据库目录内的文件
[root@localhost ~]# tar xf db.tar.gz -C /var/lib/mysql		//将打包压缩后的备份数据库文件解压到数据库目录仲
  1. 目标服务器数据库目录授权,重启服务器测试。
[root@localhost ~]# chown -R mysql:mysql /var/lib/mysql/		//将所属组所属用户改为mysql(授权)
[root@localhost ~]# systemctl start mysqld		//启动MySQL服务器
#再次进入MySQL查询数据库和表,会发现全都在
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值