有时候需要在本地导入一些stage环境的数据到本地mysql,面对1000+的sql文件(包含表结构和数据,放在同一个文件夹下),使用navicat一个一个导入sql文件显然有点太慢了,于是考虑使用source命令批量来实现.网上看了很多人遇到这个高频的数据库sql导入问题,但是没有特别具体的解决方案,只有个大概的思路,我就抛砖引玉,作为一个详细的记录,渡人渡己. 先复习一下source的使用方法,首先要用命令行方式连接到MySQL数据库,然后使用下面的命令: use database_name…
1.查看当前最大允许导入sql文件大小 show VARIABLES like '%max_allowed_packet%'; 2.修改方式 1.永久生效 修改my.cnf文件 vim /etc/my.cnf(如果找不到使用:mysql --help | grep my.cnf) 2.临时生效 在mysql 命令行中运行 set global max_allowed_packet = 2*1024*1024*10 退出mysql命令行,然后重新登录. show VARIABLES like '%…
注意编码一致性,如:我的数据库是utf-8编码,csv文档的编码也是utf-8. 导入使用 LOAD DATA LOCAL INFILE 详细用法请参看文档或者书籍. mysql user表结构: +----------+-------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +----------+-------------+------+--…
把“D:\mysql-5.6.22-winx64\bin”添加到系统环境变量path中了,然后在任意目录可访问mysql等命令,这样如登录等操作就不需要进入MySQL安装目录才好执行! MySQL下载(两个):网址: www.oracle.com1)下载MySQL Community Server (GPL) ---MySQL数据库2) MySQL Connectors ---jdbc驱动 登录: mysql -u root -p1234 查看有哪些数据库: show databases;打开一…
这应该是我写Mysql技术的最后一章了吧,短时间内应该不会再写Mysql的文章了,当然疑难杂症除外 insert语句优化 因为之前我也遇到过这样的问题,是我在做数据库适配的时候碰见的,那是我的数据还是很多,导致我迁移挺耗时间的,今天看一下这个 提交前关闭自动提交 尽量使用批量Insert语句 可以使用MyISAM存储引擎 LOAD DATA INFLIE LOAD DATA INFLIE: 使用LOAD DATA INFLIE ,比一般的insert语句快20倍 select * into OU…
使用values 后接批量数据插入,因mysql 系统参数设置导致失败(数据量过大).可通过临时修改系统参数来解决,对系统安全性无影响: set global max_allowed_packet=1024*1024*16; show global variables like 'max_allowed_packet';…