【MySQL】总结:外部txt数据导入MySQL的避坑指南(ERROR code: 3948/2068/1300/1366)

MySQL Load data local infile蜜罐 MySQL Load data local infile蜜罐的个人理解与规 阅读详情

(一)背景:

昨天在导入外部数据(txt文件)到MySQL时成功收获5连错,花了小半天把问题解决,意识到这或许是新手在导入数据时容易出现的问题。因此决定基于报错问题总结导入外部数据时要注意的事项,希望能够帮到MySQL学习的同好们。

(二)环境及语句:

Windows 10;

MySQL Server 8.0.29;

MySQL Workbench 8.0.29;

(三)结论:

我导入txt文件的代码如下:

 语句模板为:

 # 导入外部数据到Monthly_Indicator中
 load data infile 'txt文件的绝对路径(包含扩展名)'
 into table 目标表格
 fields terminated by '\t' 
 # 我的txt文件分割方式为制表符,制表符符号为'\t',因此指定MySQL导入时的分割方式为'\t';
 ignore 1 lines;
 # 我的txt文件第一行是字段名,导入时应忽略字段名,故指定MySQL忽略第一行;

需要注意的事项为:

  1. 请检查你的local_infile状态,确保它是打开的;

  2. 请将txt文件编码格式改成utf-8;

  3. 请确保外部文件对应字段的数据类型和MySQL中的一致;

MySQL中的客户端选项(三) MySQL中,mysql命令行客户端提供了许多选项,这些选项可以控制客户端的行为和连接参数。 阅读详情

相关推荐

如何将txt文件数据导入Mysql workBench建表

不过这个问题也很好解决,只需要把你的txt文件后缀变成.csv就行了,但中间还是踩了一些

qq_55345814的博客 3779

MySQL变量:local_infile

local_infile服务器变量指示能否使用load data local infile命令。该变量默认为ON。 该变量为OFF时,禁用客户端的load data local infile命令。 Sql代码 mysql>showcreatetabletest.t\G ***************************1.row**********...

记事本 2万+

MySQL基础篇】数据导出导入权限与local_infile参数

MySQL基础篇】数据导出导入权限与local_infile参数问题背景数据导出测试创建测试库(在主库进行)测试数据导出(在从库进行)测试数据导入(在主库进行) 问题背景 MySQL高可用集群架构中,应用需要使用select ... into outfile和load data [local] infile来进行数据导入导出操作。其中,数据导出(只涉及读操作)发生在只读Slave节点,通过localhost连入数据库数据导入(涉及读写操作)发生在Master节点,通过集群vip连入数据库。 DB

Sebastien23的博客 1万+

MySql 优化(3)

MySql优化 一些常用的MySql使用中的常见优化细节。 大批量数据加载优化 load数据加载 格式: load data local infile '文件路径' into table 表名 fields terminated by '[分隔符]' line terminated by '[换行符]' 1、 首先,检测全局变量‘local_infile’的状态,如果是off状态则是不可用 show global variables like 'local_infile'; 2、 修改local_inf

ziyi813的博客 2581

mysql 导入txt文件及问题解决

目录设置命令编码错误处理 设置 登录时需采用如下命令,不然可能报错 LOAD DATA LOCAL INFILE file request rejected due to restrictions on access 采用的登录命令为 mysql -u root -p --local-infile 同时登录后输入命令 set global local_infile = 1; 命令 即可采用如下命令进行导入txt文件,注意先选择数据库,以及在相应目录下运行mysql,同时注意windows txt文件换

eliforsharon的博客 4702

mysql8.0配置文件部分详解

文章目录1、local_infile2、secure-file-priv3、 log_timestamps4、default-time_zone5、wait_timeout6、default_storage_engine7、default_authentication_plugin8、max_allowed_packet9、max_connections10、open_files_limit11、log_bin_trust_function_creators 1、local_infile [mysqld]

qq_2331233079的博客 5431

MySQL导入数据报错:mysql 使用 load data local infile导入数据Loading local data is disabled(Error 3948)Error 2068

在学习黑马的MySQL进阶课程时,由于为了测试SQL的性能指标,需要导入一个数据量特别大的表,表中有1000w条件记录(大约2.2GB的数据),此时老师已经将这1000w条记录拆分成5张表了,我需要使用。该参数的作用是控制导入权限,也就是说MySQL默认是禁止直接从外部导入数据的,相对应的参数还有。:要确保路径正确,同时需要导入五次,我有五张表:tb_sku1、tb_sku2、tb_sku3、tb_sku4、tb_sku5。指令将这五张表导入数据库,结果执行指令的过程中Navicate报了了。

热爱编程、热爱生活、热爱探索 2537

MYSQL 数据恢复

命令用于从客户端的本地文件中加载数据MySQL 数据库。出于安全考虑,MySQL 默认禁用了这个功能,以防止未经授权的文件访问或文件上传。因此,必须在和都明确启用功能。

zhj18679130613的博客 727

MySQL进阶教程】SQL优化

MySQL进阶教程】SQL优化

m0_55799410的博客 681

MySQL:SQL优化

1. 插入优化 2. 主键优化 3. Order by优化 4. Group by优化 5. limit优化 6. count优化 7. update优化

2301_79526467的博客 1115

pymysql提示Warning: (1300, “Invalid utf8mb4 character string: ‘F9876A‘“)

错误原因 使用pymysql连接MySQL数据库,新增数据的字段中有blob类型的数据,在新增的时候报Warning: (1300, "Invalid utf8mb4 character string: 'F9876A'") 解决方法 未修改的代码如下 def insert_vector(table_name ,vector_id,vector_str): connect = None cursor = None try: connect = pymysql.

修炼之路 6870

mysql infile local_MySQL使用LOAD DATA LOCAL INFILE报错

在windows系统的MySQL8.0中尝试执行以下语句时报错mysql> LOAD DATA LOCAL INFILE '/path/filename' INTO TABLE tablename;ERROR1148(42000): The used command is not allowed with thisMySQL version所用的指令在当前MySQL版本不被允许,但其实...

weixin_32347459的博客 1953

mysql load character_mysql load data Invalid utf8mb4 character string:

使用mysql的 load data 导入数据数据库中:LOAD DATA LOCAL INFILE '/tmp/2982/20200424/user.csv'INTO TABLE t_user CHARACTER SET utf8mb4 FIELDS TERMINATED BY ','LINES TERMINATED BY '\r\n'IGNORE 1 LINES(userName, use...

weixin_28585773的博客 3559

解决 ERROR 1300 (HY000): Invalid utf8 character string: ''

将filename.csv、filename.txt另存为utf-8格式的文件。

qq_42796487的博客 1万+

暂时解决MySQL的local_infile=ON问题

然后查询docker exec -it mysql2 mysql -uroot -p -e "SHOW GLOBAL VARIABLES LIKE 'local_infile';可是配置完后重启并没有修改成功,所以只能每次重启后手动设置暂时使用,这个方法只能暂时用一下,不过在这个场景下适用,因为这个设置开一次导入数据就可以关掉了,本来就是不推荐开启。注意这个方法只是暂时设置,需要每次重启都能设置的需要在my.ini里面配置,可以参考这篇。这个错误与路径格式无关,而是与 MySQL 的安全设置有关。

mztheidan的博客 555

错误代码:1300 Invalid utf8mb4 character String:‘‘

错误代码:1300 Invalid utf8mb4 character String:''

雾林小妖的博客 945

mysql数据库local_infile_启用local-infile将数据从rails加载到远程mysql

我使用connection_ninja(https://github.com/cherring/connection_ninja)从我的rails应用程序连接到远程mysql数据库.我的模型中有一个方法,它使用’load data local infile ..’从运行我的rails app的服务器加载到远程mysql db中的csv文件.代码如下:class Product < Activ...

weixin_35794835的博客 1277

MySQL(下)

系统变量 是MySQL服务器提供,不是用户定义的,属于服务器层面。分为全局变量(GLOBAL)、会话变量(SESSION)。用户定义变量 是用户根据需要自己定义的变量,用户变量不用提前声明,在用的时候直接用 "@变量 名" 使用就可以。其作用域为当前连接。SELECT 字段名 INTO @var_name FROM 表名;用户定义的变量无需对其进行声明或初始化,只不过获取到的值为NULL。-- 赋值set @mygender := '男',@myhobby := 'java';

qq_58551342的博客 312
上一篇: 【MySQL】警告: 1681 - XXX is deprecated and will be removed in a future release.
下一篇: Python报错记录 | TypeError: unsupported operand type(s) for +: ‘bool‘ and ‘str‘
Howa_
博客等级 码龄4年 3粉丝 4原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值