mysql备份与还原详解
mysql备份与还原详解
一、tar备份:
1、备份数据库:
tar cvfz phpbb2_db_20020601.tgz phpbb2
/etc/rc.d/init.d/mysqld start
2、还原数据库:
mv phpbb2 phpbb2_error
tar xvfz phpbb2_db_20020601.tgz
/etc/rc.d/init.d/mysqld.start
二、每日24:00自动备份数据库
利用系统crontab来定时执行备份文件,按日期对备份结果进行保存,达到备份的目的。
1、创建保存备份文件的路径/mysqldata
#mkdir /mysqldata
2、创建/usr/sbin/bakmysql文件
查找数据库库文件的路径:
一般都是:/var/lib/mysql,或者,/usr/local/mysql/var
查找方法:
(1)、/usr/local/mysql/bin/mysql -u root -p 进入数据库
(2)、输入:show databases;
(3)、这是可以查看到所有的数据库,然后
(4)、find / -name db(你想查找的数据库名)
之后:#vi /usr/sbin/bakmysql 输入
tar zcvf /mysqldata/mysql$rq.tar.gz /var/lib/mysql
保存退出。
3、修改文件属性,使其可执行
新建任务:
首先查看一下crontab的任务列表:
crontab -l
然后新建:
crontab -e
添加一行
表示每天24点钟执行备份
4、重新启动crond
完成。
这样每天你在/mysqldata可以看到这样的文件
mysql20040619.tar.gz
三、dump备份恢复
1、备份数据库:
mysqldump phpbb2 --flush-logs -uroot -p --opt > phpbb2_20020601.sql
2、修改数据库,比如:
3、还原数据库:
[root@bogon mysql]# mysql -uroot -p123456
mysql > create database phpbb2;
mysql> flush privileges;
shell > mysql phpbb2 -uroot -p123456 < phpbb2_20020601.sql
这是数据库已经还原回去了。理解:其实dump命令是导入导出数据库,对数据库命令进行记录,然后覆盖以后操作,就相当于命令重新执行了一便,已达到备份恢复的目的。
您可能感兴趣的文章:
Linux下备份与还原整个MySQL整个数据库的脚本
mysql命令之备份数据库
mysql备份与还原详解
php Mysql数据库备份类及调用方法
mysql命令行导出数据库方法详解
mysqldump命令导出符合条件的记录
Linux下备份与还原整个MySQL数据库
mysql修改密码与mysqldump备份与还原
mysql数据库备份常用命令示例
mssql数据库备份与恢复实例