开发者社区> 技术小美> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

Mysql备份与还原及优化方法

简介:
+关注继续查看

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=0

mysql>sourcedb_name.sql

mysql>setSQL_LOG_BIN=1

l 还原过程中,当用showprocesslist查看正在运行的mysql线程,看到state列为Repair with keycacbe时,表示修复指令正在利用索引缓存一个一个地创建新索引,该操作速度非常缓慢,产生该问题的原因是配置文件my.cnfmyisam_max_sort_file_size等参数值过小,相应改大即可。my.cnf文件一般在mysql目录etc子目录下,一般可设以下参数如下:

myisam_sort_buffer_size =1024M

tmp_table_size =256M

tmpdir =/back1/dzy_bak

myisam_max_sort_file_size=20G

修改了参数后,需要重启mysql,命令如下:

$ mysqladmin -uroot -pshutdown

$ mysqld_safe&

重启后,重新执行还原操作,可以发现执行速度会快很多。



本文转自 Tenderrain 51CTO博客,原文链接:http://blog.51cto.com/tenderrain/1614329

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
mysql集群的备份与还原
应用场景 当使用mysql集群数据库的时候,有时候会误删一些数据,那么数据就缺失了完整性,现在需要将数据进行备份,将误删的数据还原出来,这样保证数据的完整性。
1188 0
mysql增量备份还原详解
<p><br></p> <p><span style="color:rgb(51,51,51); font-family:Arial; font-size:14px; line-height:26px"><span style="font-size:24px"><a target="_blank" href="http://blog.csdn.net/jesseyoung/article
3342 0
MySQL的备份与还原
原文: MySQL的备份与还原 MySQL备份和还原,都是利用mysqldump、mysql和source命令来完成的。 1.Win32下MySQL的备份与还原 1.1 备份 开始菜单 | 运行 | cmd |利用“cd /Program Files/MySQL/MySQL Server 5.0/bin”命令进入bin文件夹 | 利用“mysqldump  -u 用户名 -p databasename >exportfilename”导出数据库到文件,如mysqldump -u root -p voice>voice.sql,然后输入密码即可开始导出。
989 0
+关注
6819
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载