| CREATE TABLE `UserBehavior` ( |
| `id` int NOT NULL AUTO_INCREMENT, |
| `user_id` varchar(45) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL, |
| `item_id` varchar(45) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL, |
| `category_id` varchar(45) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL, |
| `behavior_id` varchar(45) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL, |
| `timestamp` varchar(45) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL, |
| PRIMARY KEY (`id`) USING BTREE |
| ) ENGINE = InnoDB AUTO_INCREMENT = 10660001 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = DYNAMIC; |
| import os |
| import pandas as pd |
| |
| chunksize = 1000000 |
| |
| filename = r"C:\work\mysql\UserBehavior.csv" |
| data1 = pd.read_csv(filename, chunksize=chunksize, header=None, sep=',') |
| num = 0 |
| for chunk in data1: |
| num += len(chunk) |
| head, tail = os.path.split(filename) |
| data2 = pd.read_csv(filename, chunksize=chunksize, header=None, sep=',') |
| |
| i = 0 |
| for chunk in data2: |
| chunk.to_csv('{0}\{1}{2}'.format(head, i, tail), header=True, index=False) |
| print('保存第{0}个数据'.format(i)) |
| i += 1 |
| # 本地进入UserBehavior.csv所在文件夹,右键打开Git Bash |
| |
| # 执行如下代码,导入成功,导入速度极快,100w条数据(36MB)导入花费6秒 |
| ychen@DESKTOP-49HGBQ1 MINGW64 /c/work/mysql |
| $ mysqlimport -h192.168.128.80 -P3306 -uroot -p123456 db_test --fields-terminated-by=',' UserBehavior.csv --columns='user_id,item_id,category_id,behavior_id,timestamp' --local |
| mysqlimport: [Warning] Using a password on the command line interface can be insecure. |
| db_test.UserBehavior: Records: 1000001 Deleted: 0 Skipped: 0 Warnings: 0 |

| # 打开cmd,登录mysql |
| C:\Users\ychen>mysql -h 192.168.128.80 -P 3306 -u root -p |
| Enter password: ********** |
| |
| # 切换库 |
| mysql> use db_test |
| Database changed |
| |
| # 执行如下代码,只导入成功9739条数据 |
| mysql> LOAD DATA LOCAL INFILE 'C:\\work\\mysql\\UserBehavior.csv' |
| -> INTO TABLE UserBehavior |
| -> FIELDS TERMINATED BY ',' |
| -> ENCLOSED BY '"' |
| -> LINES TERMINATED BY '\n' |
| -> IGNORE 1 ROWS; |
| Query OK, 9739 rows affected, 65535 warnings (3.76 sec) |
| Records: 1000000 Deleted: 0 Skipped: 990261 Warnings: 1990261 |
| |
| # 复制如下代码 |
| LOAD DATA LOCAL INFILE 'C:\\work\\mysql\\UserBehavior.csv' |
| INTO TABLE UserBehavior |
| FIELDS TERMINATED BY ',' |
| ENCLOSED BY '"' |
| LINES TERMINATED BY '\n' |
| IGNORE 1 ROWS; |

| firewall-cmd --zone=public --add-port=3306/tcp --permanent |
| firewall-cmd --reload |
| [root@hadoop01 ~] |
| my: /etc/my.cnf |
| [root@hadoop01 ~] |
| [root@hadoop01 etc] |
| |
| tmp_table_size=256M |
| max_heap_table_size=256M |
| |
| [root@hadoop01 etc] |
| |
| show variables like '%max_heap_table_size%'; |
| show variables like '%tmp_table_size%'; |
| mysql -u root -p |
| use mysql; |
| update user set host = '%' where user ='root'; |
| flush privileges; |
| select host, user from user |
| > 2 - File 'C:xxx' not found (Errcode: 2 "No such file or directory") |
| |
| # 将单斜杠改为双斜杠 |
| ychen@DESKTOP-49HGBQ1 MINGW64 /c/work/mysql |
| $ mysqlimport -h192.168.128.80 -P3306 -uroot -pvmc79m8035 db_test |
| mysqlimport: [Warning] Using a password on the command line interface can be insecure. |
| mysqlimport: Error: 3948, Loading local data is disabled; this must be enabled on both the client and server sides, when using table: UserBehavior |
| |
| # 修改权限 |
| show variables like 'local_infile'; |
| set global local_infile = 1; |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
2021-12-07 spring boot导出word
2021-12-07 Redis入门(四):springboot整合redis