MySQL数据备份恢复太慢解决办法
一
MySQL导出的SQL语句在导入时有可能会非常非常慢,经历过导入仅45万条记录,竟用了近3个小时。在导出时合理使用几个参数,可以大大加快导入的速度。
-e 使用包括几个VALUES列表的多行INSERT语法;
--max_allowed_packet=XXX 客户端/服务器之间通信的缓存区的最大大小;
--net_buffer_length=XXX TCP/IP和套接字通信缓冲区大小,创建长度达net_buffer_length的行
注意:max_allowed_packet和net_buffer_length不能比目标数据库的配置数值大,否则可能出错。
首先确定目标库的参数值
mysql>show variables like 'max_allowed_packet';
mysql>show variables like 'net_buffer_length';
根据参数值书写mysqldump命令,如:
mysql>mysqldump -uroot -p 数据库名 -e --max_allowed_packet=1048576 --net_buffer_length=16384 > SQL文件
如:
mysql>mysqldump -uroot -p discuz -e --max_allowed_packet=1048576 --net_buffer_length=16384 > discuz.sql
之前2小时才能导入的sql现在几十秒就可以完成了。
估计会有很多表在mysqldump的时候 长时间处于opening table 状态,你可以show processlist;观察下
mysqldump 会锁表。 另外你如果有 5万个表,速度也不会太快。
mysqldump -uroot -h127.0.0.1 -p --all-databases --single-transaction --add-drop-database --add-drop-table --comments --complete-insert --default-character-set=utf8 --result-file=path/file.sql
--single-transaction 试一试这个参数
--max_allowed_packet 这个参数可以设置大一些
INNOSB无法直接COPY,用MYSQLDUMP导出,在导出时最好没有用户使用,你的表多,速度不会快。
在保持两机器环境变量,安装目录等细节完全一样的情况下,你可以直接拷数据文件到另一台机器。这样做风险比较大就是了。。。。。linux的一般在/var/lib/mysql目录下,这个目录里以你的数据库名字命名的目录,里面就是数据文件。
在mysqldump 加个参数 --quick 试下看看
使用mysqldump和mysqlimport来转移数据库。对于大的表,比只是使用mysqldump要快得多。在下面的命令中,DUMPDIR代表用来保存mysqldump输出的目录全路径名。
首先,创建保存输出文件的目录并备份数据库:
shell> mkdir DUMPDIRshell>mysqldump --tab=DUMPDIR db_name然后将DUMPDIR目录中的文件转移到目标机上相应的目录中并将文件装载到MySQL:
shell> mysqladmin create db_name # create databaseshell> cat DUMPDIR/*.sql | mysql db_name # create tables in databaseshell> mysqlimport db_name DUMPDIR/*.txt # load data into tables不要忘记复制MySQL数据库,因为授权表保存在该数据库中。你可能需要在新机器上用MySQL root用户运行命令,直到产生MySQL数据库。
将mysql数据库导入目标机器后,执行mysqladmin flush-privileges,以便服务器重载授权表信息。
二
还原个8G的数据库还原了一晚上还没跑完,头疼。
1.查看变量 innodb_flush_log_at_trx_commit的值
SHOW VARIABLES LIKE 'innodb_flush_log_at_trx_commit' ;
2.查询结果如果是1的话,将其修改成0
SET GLOBAL innodb_flush_log_at_trx_commit =0;
3.这时候再source,会发现速度快了很多,在结束后记得把这个变量重新设置成1
SET GLOBAL innodb_flush_log_at_trx_commit =1;
三
MySQL中source命令使用
今天碰到个问题要用phpmyadmin导入1G的数据,但是在怎么都导入不了,用命令行就可以轻松搞定了。用mysql source命令可以导入比较大的文件。
mysql>use dbtest;
mysql>set names utf8;
mysql>source D:/www/sql/back.sql;
通过source命令导入多个文件,可以新建一个sou.sql文件,里面存放下面的命令
例如:
source d:/a1.sql;
source d:/a2.sql;
当你运行
这样就可以在一个source命令里面导入多个sql文件了。
MySQL数据备份恢复太慢解决办法相关推荐
- mysql数据备份恢复
数据备份恢复 一.概述 MySQL数据备份即databases Binlog my.cnf 所有备份数据都应放在非数据库本地,而且建议有多份副本.测试环境中做日常恢复演练,恢复较备份更为重要. 备份: ...
- MySQL数据备份恢复全攻略,让我们通过简单几步找回丢失的数据
编写初衷 没有人生下来天生就是会计算机的,就拿笔者来说的话,也是从Windows->Centos->Ubuntu一步一步慢慢学习,积累下来的.为了让大家能够更快更高效率的学习,从今天开始, ...
- Mysql数据备份恢复及主从同步
目录 Mysql备份及主从同步 Mysql备份 1. mysqldump全量备份 2.log_bin增量备份 Mysql主从同步配置 1.1主从同步过程 1.2 配置 Mysql备份及主从同步 Mys ...
- 阿里云mysql数据备份恢复数据到本地mysql(备份+binlog)
参考:https://help.aliyun.com/knowledge_detail/41817.html?spm=a2c4g.11186623.4.3.49bf4292RNNrSC 起因:生产环境 ...
- mysql-阿里云mysql数据备份恢复踩的坑
0. 阿里云官方 参考链接:https://help.aliyun.com/knowledge_detail/41817.html 大家可以先按照阿里云官方的来,如果发现有地方卡住了再来看我的操作教程 ...
- MySQL数据备份、恢复
文章目录 一.MySQL日志管理 1.1日志分类 1.2日志配置 1.3日志查询 二.MySQL数据备份 2.1物理备份 2.2逻辑备份 三.常用的备份方法 3.1物理冷备 3.2工具备份(温备) 3 ...
- python之mysql数据备份和恢复
python之mysql数据备份和恢复 1. 数据的备份和恢复 1.1 数据备份 1.2 数据恢复 1. 数据的备份和恢复 下面的命令属于mysql特有的,不属于sql句. 1.1 数据备份 操作步骤 ...
- commvault备份mysql数据库_Commvault数据备份恢复平台-功能测试报告.pdf
Commvault 软件功能测试报告 Commvault 测试报告 Commvault 数据备份恢复平台 功能测试报告 第 1 页 Commvault 软件功能测试报告 目 录 第 1 章 测试概述 ...
- 2.5.1 MySQL数据库备份恢复基础讲解
MySQL数据库备份恢复基础 MySQL常见的故障类型 对于用户来说,数据库中保存的数据通常至关重要,所以要采取各种手段来防止各种可能的数据损失和数据故障. DBA主要任务就是维持数据库的高可靠性运行 ...
- 远程linux还原本地bak文件,Linux -- 服务器数据备份恢复策略
一.Linux 备份恢复基础 1.什么是备份 最简单的讲,备份数据的过程就是拷贝重要的数据到其他的介质之上(通常是可移动的),以保证在原始数据丢失的情况下可以恢复数据.一次备份可能是简单的 cp命令, ...
最新文章
- vim学习笔记(一)
- 【LeetCode笔记】199. 二叉树的右视图(Java、二叉树、层序遍历)
- postfixadmin 导入数据库出错 ERROR 1062 (23000) at line 29
- 分享一下10个常用jquery片段
- Video Analysis 相关领域解读之Video Captioning(视频to文字描述)
- vc++之剪贴板通信实例
- activiti学习资料(架构描述)
- 【逆向JS】调用网易云音乐搜歌功能并爬取评论Python/Java
- can收发器TJA1043
- (转载)人机交互技术发展左右产业趋势
- html5网页制作技巧,HTML5 网页制作技巧
- quartz简单配置
- 【杭电数电实验】verilog入门指北
- 使用MBROSTool 工具制作U盘多启动盘的方法总结
- 为何某些文章的阅读量这么高?
- linux下 firefox安装flash插件
- Stochastically Stable Negativity for Analytically Linear Subalgebras——ShaneZhang
- 为什么程序员都特别想要一把机械键盘?
- 数据库 - 数据查询
- python基本使用
热门文章
- 研究生论文排版工具:LaTeX
- escplise使用教程_Eclipse使用教程(图文详解)
- 将oracle端口1521共享_[转]利用oracle1521端口抓鸡
- Ubuntu 下安装 QQ
- 下载历史版本的英伟达显卡驱动
- office2020与2016版的不同_Office哪个版本最好用?Office 2007/2010/2013/2016/2019/2020怎么选?...
- mysql 纯真ip 导出dat_用纯真ip数据库.dat文件查询ip归属
- 幅值与峰峰值的计算_峰峰值,峰值,平均值,有效值的关系
- Quartus ii安装及使用实验报告
- 大一c语言大作业实验报告,大一c语言实验报告