前言
一般来说将.sql文件导入到数据库有以下三种方法:
(1)通过phpmyadmin,不推荐,有内存等的限制;
(2)通过Navicat Premium工具运行sql,效率低;
(3)通过source命令导入,推荐,效率高
前段时间由于工作需要尝试了用source方法将sql文件导入数据库,发现很多教程写的不完整,本文章将详细介绍第(3)种效率较高的将sql文件导入到数据库的方法,并将导入过程中遇到的错误及解决方法进行说明,避免后人少走弯路。
步骤
1.将mysql服务打开:
右击mysql,选择重新启动。
2.配置最大传输速率,改变字符集编码
在大容量的数据传输中可能要耗费很多时间,这是因为默认的最大传输为1M或4M,我们可以设置其他值来提高传输速率。
- 打开mysql配置文件my.ini,该文件的路径一般是安装mysql的路径。
用记事本打开my.ini,在mysqld中加入这行代码,并点击保存,关掉my.ini。
max_allowed_packet = 1024M
提示:由于下载mysql的方式不同,因此可能存在my.ini不存在的情况,此时可参考教程:mysql中没有my.ini文件解决办法
3.命令行导入
win+R,输入cmd并回车调出命令行,输入如下命令:
1.#进入mysql
mysql -u root -p
输入密码,有的密码为空则直接回车即可。
2.查看最大传输速率有没有被修改
show VARIABLES like '%max_allowed_packet%';
提示:如果输入命令提示语法错误则试试手动输入,因为复制可能会导致标点符号变化。
3.创建数据库
CREATE DATABASE 数据库名;
也可以在navicat中新建数据库,此时可以忽略掉这个命令。二者的目的都是为了新建一个数据库,将.sql文件导入到这个数据库中,如果已经存在,则只需要用下一个命令 use 数据库来选中这个数据库即可。
4.使用数据库
use 数据库名;
5.设置字符集:(解决中文问题,不执行此步可能会有错误)
set charset utf8;
根据实际情况设置,建议使用utf8mb4,否则可能会报错。
如我遇到的错误:
解决步骤参考:
导入.sql文件到数据库中时出现ERROR 2005 (HY000) Mysql server host…错误
6.引入SQL文件
source 文件的路径;
如我的待导入.sql文件在D目录下,则命令为:
source D:/school.sql;
提示:注意为"/"
结束
如果顺利的话,执行完source后的成功界面是:
静等导入完成,在navicat中查看
以上就是今天要讲的内容。