若水若谷

2020-07-08   阅读量: 898

Mysql

MySQL:MySQL8.0导入数据的几种方式

扫码加入数据分析学习群

为了安全起见,MySQL8.0默认不允许客户端从本地载入文件。客户端local_infile默认关闭,因此需要在安全路径下导入本地文件。


方法一:在workbench客户端操作


查看安全路径

show variables like '%secure%';



找到安全路径,将数据文件放在此路径下


然后执行如下命令导入数据(emp表结构已创建好)

表名不能是中文,’\‘在编程语言中是转义符,因此要改为’\\'或‘/’

load data infile "C:/ProgramData/MySQL/MySQL Server 8.0/Uploads/employee.csv"

into table emp

fields terminated by ','

ignore 1 lines;



若安全路径为NULL,可以在命令行(cmd)中打开导入外部数据的权限后,在命令行(cmd)中导入数据,具体操作步骤参见方法二。


方法二:在命令行(cmd)中操作


启动cmd


进入MySQL安装路径



使用如下命令登录:

mysql --local-infile=1 -u root -p



登陆成功后,选择进入数据库并查看是否有导入外部数据的权限:

mysql> use test;

mysql> show global variables like 'local_infile';

+---------------+-------+

| Variable_name | Value |

+---------------+-------+

| local_infile | OFF |

+---------------+-------+

1

2

3

4

5

6

打开导入外部数据的权限

mysql> set global local_infile = 'ON';

mysql> show global variables like 'local_infile';

+---------------+-------+

| Variable_name | Value |

+---------------+-------+

| local_infile | ON |

+---------------+-------+

1

2

3

4

5

6

然后再进行数据导入(emp表结构已创建好)注意关键字local

路径中不能有中文,’\‘在编程语言中是转义符,因此要改为’\\'或‘/’

mysql> load data local infile "C:/Users/EDZ/Desktop/employee.csv"

into table emp

fields terminated by ','

ignore 1 lines;

mysql> select * from emp;

+-------+--------+-----------+------+------------+------+------+--------+

| empid | ename | job | mgr | hiredate | sal | comm | deptno |

+-------+--------+-----------+------+------------+------+------+--------+

| 7369 | smith | clerk | 7902 | 1980-12-17 | 800 | NULL | 20 |

| 7499 | allen | salesman | 7698 | 1981-02-20 | 1600 | 300 | 30 |

| 7521 | ward | salesman | 7698 | 1981-02-22 | 1250 | 500 | 30 |

| 7566 | jones | manager | 7839 | 1981-04-02 | 2975 | NULL | 20 |

| 7654 | martin | salesman | 7698 | 1981-09-28 | 1250 | 1400 | 30 |

| 7698 | blake | manager | 7839 | 1981-05-01 | 2850 | NULL | 30 |

| 7782 | clark | manager | 7839 | 1981-06-09 | 2450 | NULL | 10 |

| 7788 | scott | analyst | 7566 | 1987-04-19 | 3000 | NULL | 20 |

| 7839 | king | persident | NULL | 1981-11-17 | 5000 | NULL | 10 |

| 7844 | turner | salesman | 7698 | 1981-09-08 | 1500 | 0 | 30 |

| 7876 | adams | clerk | 7788 | 1987-05-23 | 1100 | NULL | 20 |

| 7900 | james | clerk | 7698 | 1981-12-03 | 950 | NULL | 30 |

| 7902 | ford | analyst | 7566 | 1981-12-03 | 3000 | NULL | 20 |

| 7934 | miller | clerk | 7782 | 1982-01-23 | 1300 | NULL | 10 |

+-------+--------+-----------+------+------------+------+------+--------+


最后查看数据导入成功即可。

32.1445 4 6 关注作者 收藏

评论(0)


暂无数据

推荐课程