Load local data注意

1、导入本地数据时候需要保证local-infile=on

show global variables like 'local_infile';
set global local_infile=on;

2、mysql8.0的load data目前支持csv与TXT的导入
mysql无法在命令行模式下使用load data命令导入xlsx文件。不只是xlsx类型,还有一些其他文件类型无法被导入,判断能否被导入的一个简便方法是:尝试使用记事本打开此文件,显示乱码就意味着此类文件类型无法被导入,显示正确的数据的则能被导入。

3、enum枚举两三个可以使用load data 多了就导不进去了
如果将一个数字存储到一个 ENUM 中,数字被当作为一个索引值,并且存储的值是该索引值所对应的枚举成员。(但是,这在 LOAD DATA 将不能工作,因为它视所有的输入均为字符串。) 在一个 ENUM 字符串中存储数字是不明智的,因为它可能会打乱思维。

https://www.cnblogs.com/lgp2000/p/5351554.html

4、Public Key Retrieval is not allowed(dbeaver连接时出现错误)
解决方法
当禁用 SSL/TLS 协议传输后,客户端会使用服务器的公钥进行传输,默认情况下客户端不会主动去找服务器拿公钥,进而会出现错误。因此需要设置 allowPublicKeyRetrieval=true允许客户端获得服务器的公钥

5、本地导入常见错误(2068、3948)
方法一:
1、Mysql命令行输入:
show global variables like 'local_infile’;
2、查看 local_infile 是否是“ON”,不是的话,输入:
set global local_infile=on;
3、执行load data命令

方法二:
1、在系统终端输入:
mysql -u username -p --local-infile=1 database_name
2、启动MySQL客户端并连接到指定数据库,在MySQL客户端执行load data命令

6、8.0mysql修改密码
https://blog.51cto.com/lishuoboy/5869445

最后编辑:2023年08月30日 ©著作权归作者所有