Mysql备份与还原及优化方法
2015-02-13 16:33
337 查看
Mysql备份一般采用mysqldump命令,命令形式一般如下:
$ mysqldump –hhostname –uuser –ppassword–Pport db_name > db_name.sql 默认情况下,不备份存储过程和函数,若要备份存储过程和函数,要加上-R选项,若仅备份存储过程,可用如下命令:
$mysqldump –hhostname –user –ppassword–Pport –R –t –d db_name >db_name_process.sql 其中-t选项表示不写入表创建信息(create table语句),-d选项表示不写入表的任何信息(如果只想得到一个表的结构的导出,这是很有用的)。
Mysql还原时,登录数据库,执行source db_name.sql即可:
mysql>sourcedb_name.sql 当数据量较大的时候,执行速度可能较慢,可以有以下几种优化方法:
l 执行还原的sql命令前先关闭记录日志(要以root的权限执行):mysql>setSQL_LOG_BIN=0mysql>sourcedb_name.sqlmysql>setSQL_LOG_BIN=1l 还原过程中,当用showprocesslist查看正在运行的mysql线程,看到state列为Repair with keycacbe时,表示修复指令正在利用索引缓存一个一个地创建新索引,该操作速度非常缓慢,产生该问题的原因是配置文件my.cnf中myisam_max_sort_file_size等参数值过小,相应改大即可。my.cnf文件一般在mysql目录etc子目录下,一般可设以下参数如下:myisam_sort_buffer_size =1024Mtmp_table_size =256Mtmpdir =/back1/dzy_bakmyisam_max_sort_file_size=20G修改了参数后,需要重启mysql,命令如下:$ mysqladmin -uroot -pshutdown$ mysqld_safe&重启后,重新执行还原操作,可以发现执行速度会快很多。
$ mysqldump –hhostname –uuser –ppassword–Pport db_name > db_name.sql 默认情况下,不备份存储过程和函数,若要备份存储过程和函数,要加上-R选项,若仅备份存储过程,可用如下命令:
$mysqldump –hhostname –user –ppassword–Pport –R –t –d db_name >db_name_process.sql 其中-t选项表示不写入表创建信息(create table语句),-d选项表示不写入表的任何信息(如果只想得到一个表的结构的导出,这是很有用的)。
Mysql还原时,登录数据库,执行source db_name.sql即可:
mysql>sourcedb_name.sql 当数据量较大的时候,执行速度可能较慢,可以有以下几种优化方法:
l 执行还原的sql命令前先关闭记录日志(要以root的权限执行):mysql>setSQL_LOG_BIN=0mysql>sourcedb_name.sqlmysql>setSQL_LOG_BIN=1l 还原过程中,当用showprocesslist查看正在运行的mysql线程,看到state列为Repair with keycacbe时,表示修复指令正在利用索引缓存一个一个地创建新索引,该操作速度非常缓慢,产生该问题的原因是配置文件my.cnf中myisam_max_sort_file_size等参数值过小,相应改大即可。my.cnf文件一般在mysql目录etc子目录下,一般可设以下参数如下:myisam_sort_buffer_size =1024Mtmp_table_size =256Mtmpdir =/back1/dzy_bakmyisam_max_sort_file_size=20G修改了参数后,需要重启mysql,命令如下:$ mysqladmin -uroot -pshutdown$ mysqld_safe&重启后,重新执行还原操作,可以发现执行速度会快很多。
相关文章推荐
- Mysql自动备份与还原方法
- 自用mysql自带命令实现数据库备份还原的方法
- mysql 直接从date 文件夹备份表,还原数据库之后提示 table doesn`t exist的原因和解决方法
- php简单备份与还原MySql的方法
- mysql 数据库备份 还原 导入sql文件的命令方法
- mysql ndb集群备份数据库和还原数据库的方法
- mysql 直接从date 文件夹备份表,还原数据库之后提示 table doesn`t exist的原因和解决方法
- 快速备份和还原 MySQL 数据库的另一种方法
- 介绍备份和还原MySQL数据的两种方法
- mysql ndb集群备份数据库和还原数据库的方法
- mysql ndb集群备份数据库和还原数据库的方法
- mysql自动备份和还原的几种方法
- mysql 直接从date 文件夹备份表,还原数据库之后提示 table doesn`t exist的原因和解决方法
- 简单的MySQL备份与还原方法分享
- mysql 数据库备份和还原方法集锦 推荐
- mysql 把备份数据文件还原后乱码处理方法
- 还原大备份mysql文件失败的解决方法分享
- Mysql的myqldump命令使用方法(备份与还原)
- linux 下mysql备份还原方法
- 简单的MySQL备份与还原方法分享