加速 MySQL 导入导出的方法
2011-11-16 09:47
169 查看
http://www.21andy.com/blog/20100917/1952.html
MySQL导出的SQL语句在导入时有可能会非常非常慢,在处理百万级数据的时候,可能导入要花几小时。在导出时合理使用几个参数,可以大大加快导 入的速度。
-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 命令,如:
# mysqldump -uroot -p123 21andy -e --max_allowed_packet=16777216 --net_buffer_length=16384 > 21andy.sql
OK,现在速度就很快了,主要注意的是导入和导出端的 max_allowed_packet 和 net_buffer_length 这2个参数值设定,弄大点就OK了
其实,最快的方法,是直接COPY数据库目录,不过记得先停止 MySQL 服务。
MySQL导出的SQL语句在导入时有可能会非常非常慢,在处理百万级数据的时候,可能导入要花几小时。在导出时合理使用几个参数,可以大大加快导 入的速度。
-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 命令,如:
# mysqldump -uroot -p123 21andy -e --max_allowed_packet=16777216 --net_buffer_length=16384 > 21andy.sql
OK,现在速度就很快了,主要注意的是导入和导出端的 max_allowed_packet 和 net_buffer_length 这2个参数值设定,弄大点就OK了
其实,最快的方法,是直接COPY数据库目录,不过记得先停止 MySQL 服务。
相关文章推荐
- 加速 MySQL 导入导出的方法
- 加速 MySQL 导入导出的方法
- 加速 MySQL 导入导出的方法
- MySQL数据导入导出方法与工具(2)
- mysql 复制表数据,表结构、数据导入、导出常用方法
- MySQL导入及导出文件出错ERROR 1290 (HY000)解决方法
- MySQL 文本文件的导入导出数据的方法
- 16 MySQL数据导入导出方法与工具介绍之一
- mysql导出csv/sql/newTable/txt的方法,mysql的导入txt/sql方法........................................................
- Mysql 导入导出csv 中文乱码问题的解决方法
- MySQL数据导入导出方法与工具介绍
- MySQL数据导入导出方法与工具mysqlimport
- mysql下完整导出导入实现方法
- mysql导入导出数据中文乱码解决方法小结
- MySQL 文本文件的导入导出数据的方法
- Mysql导入导出大型数据库方法
- mysql导入导出数据中文乱码解决方法小结
- mysql导出csv/sql/newTable/txt的方法,mysql的导入txt/sql方法........................................................
- MySQL数据导入导出方法与工具介绍
- MySQL 文本文件的导入导出数据的方法