问题背景:
使用 navicat,mysql-front 等工具导入,因为数据量大,这些工具处理不了, 会报奇奇怪怪的错误。可通过命令行的方式导入数据库文件。
实现目标:
解决navicat工具无法导入sql文件的问题。
具体操作
- 用命令行连接数据库
打开命令行后,输入
mysql -hlocalhost -uroot -proot
然后回车,即可登录MySQL
-h 表示服务器名字。localhost表示本地
-u 表示用户名
-p 表示密码。直接在-p后面输入密码即可,中间不能有空格。
注意:
如果你的mysql没有安装在C盘下,你需要先使用DOS命令进入mysql的安装目录下的bin目录中。以我的电脑为例,方法如下:输入D:进入D盘,在输入cdD:\Install\mysql\mysql-5.6.24-winx64\bin进入到mysql的bin目录下才可以输入mysql -hlocalhost -uroot -p
- 创建数据库
创建数据库tmall_ssm 设置字符编码为utf-8;
CREATE DATABASE tmall_ssm DEFAULT CHARACTER SET utf8;
- 退出数据库
exit
了解:
启动mysql数据库:在出来的DOS命令窗口中输入 net start mysql,或者使用快捷键Windows键(在键盘上有个Windows标志的按键)+ R直接输入net start mysql后回车。(另附:关闭的命令为net stop mysql)
- 导入数据库sql文件
在我们退出上面的数据库环境后,在cmd环境下即可导入数据库sql文件;
D:\Install\mysql\mysql-5.6.24-winx64\bin\mysql.exe -u root -proot --default-character-set=utf8 tmall_ssm < f:\howj\tmall_ssm.sql
警告:
Warning: Using a password on the command line interface can be insecure.
Warning信息并非提示设置失败,而是告诉大家密码显露出来了,当心背后有人。
- 结果:
打开mysql界面软件Navicat Premium即可看到数据库已经导入:
补充:
不会警告“密码显露出来不安全”的方式;
只是不在命令行中的-p后面写上密码即可,在出现的enter password:后再输入密码即可;
D:\Install\mysql\mysql-5.6.24-winx64\bin>mysql -hlocalhost -uroot -p
Enter password: ****(此处为用户root的密码,本人的为root)
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 72
Server version: 5.6.24 MySQL Community Server (GPL)
Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> CREATE DATABASE tmall_ssm DEFAULT CHARACTER SET utf8;
Query OK, 1 row affected (0.00 sec)
mysql> exit
Bye
D:\Install\mysql\mysql-5.6.24-winx64\bin>D:\Install\mysql\mysql-5.6.24-winx64\bin\mysql.exe -u root -p --default-character-set=utf8 tmall_ssm < f:\howj\tmall_ssm.sql
Enter password: ****
D:\Install\mysql\mysql-5.6.24-winx64\bin>