数据库命令行导入方式及部分问题的解决办法

  • Post author:
  • Post category:其他




0. 写在前面

以下内容仅为个人的经验谈,没有任何学术性,可能存在一些翻译不准确的情况,仅作为一些问题的解决办法参考。




1. 基本步骤

  1. 用管理员模式打开cmd
  2. 登录数据库
mysql -u <user> --local-infile=1 -p

user需替换为数据库的用户名

-local-infile=1的作用是修改数据库的本地录入权限,允许从本地文件中导入数据

  1. 输入密码
  2. 切换当前使用的集合
use <schemas>

schemas需替换为数据库的集合名称

  1. 提升权限
set global local_infile = 1;
  1. 载入本地数据
load data local infile '<filelocate>' into table <shcemas.table>
fields terminated by ',';

载入本地csv文件的数据到指定数据表。

文件地址可以通过把文件直接拖入cmd里自动填写地址,但记得要把原本的反斜杠(\)改为正斜杠(/)。(本方法在WIN10下失效)

第二句的意思是以英文逗号(,)作为字段的分割依据。




2. 常见报错及解决方法



1. mysql报错error 1064

原因:语法错误

解决步骤:检查语法



2. mysql报错error 3948

原因:因权限不足,文件导入失败

解决步骤:

  • 查看本地文件录入权限是否有打开
show variables like 'local_infile';
  • 如果value=off,则输入以下代码
set global local_infile = 1;



3. mysql报错error 2068

原因:考虑为mysql8.0的安全等级较高

解决步骤:

  • 退出mysql
  • 使用提高等级的登录方式
mysql -u root --local-infile=1 -p



4. 在命令行输入net start mysql,显示服务名无效

原因:安装的是8.0的版本,所以服务名称不同。

解决步骤:输入

net start mysql80



5. 在命令行输入mysql -u root -p,显示不是内部或外部命令

原因:没有设置环境变量。mysql8.0安装时环境变量默认设置的是shell的安装地址,因此需要环境变量的path里新增sever的安装地址。

解决步骤:

  • 右键计算机-属性-高级系统设置-环境变量
  • 新建或修改PATH变量,值设置为mysql server的bin文件夹
  • 一般默认为C:\Program Files\MySQL\MySQL Server 8.0\bin
  • 点击确定,关闭系统属性窗口



版权声明:本文为joeyoung18原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。