MySQL: load data infile 需要注意的点
load data infile 批量將文本導入到mysql的表中。主要是為了加快導入記錄的速度。
---給個例子:
1.文本如下 t0.txt:
"我愛你","20","相貌平常,經常耍流氓!哈哈"
"李奎","21","相貌平常,經常耍流氓!哈哈"
"王二米","20","相貌平常,經常耍流氓!哈哈"
"老三","24","很強"
"老四","34","XXXXX"
"老五","52","***%*¥*¥*¥*¥"
"小貓","45","中間省略。。。"
"小狗","12","就會叫"
"小妹","21","PP的很"
"小壞蛋","52","表里不一"
"上帝他爺","96","非常英俊"
"MM來了","10","。。。"
"歌頌黨","20","社會主義好"
"人民好","20","的確是好"
"老高","10","學習很好"
"斜三","60","眼睛斜了"
"中華之子","100","威武的不行了"
"大米","63","我愛吃"
"蘋果","15","好吃"
?2.創建一個表t0
?CREATE TABLE `t0` (
? `id` bigint(20) unsigned NOT NULL auto_increment,
? `name` char(20) NOT NULL,
? `age` tinyint(3) unsigned NOT NULL,
? `description` text NOT NULL,
? PRIMARY KEY? (`id`),
? UNIQUE KEY `idx_name` (`name`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
?3.mysql下執行:
?load data infile '/root/t0.txt' ignore into table t0 character set gbk fields terminated by ',' enclosed by '"' lines terminated by '\n' (`name`,`age`,`description`);
報錯:
The MySQL server is running with the --secure-file-priv option so it cannot ...
解決:
secure-file-priv的值有三種情況:
secure_file_prive=null ––限制mysqld 不允許導入導出
secure_file_priv=/path/ – --限制mysqld的導入導出只能發生在默認的/path/目錄下
secure_file_priv=’’ – --不對mysqld 的導入 導出做限制
step3:查看你的secure-file-priv設置:
show variables like ‘%secure%’;
將secure_file_priv變量設置為空,或者將文本拷貝到默認路徑下。
再次執行,成功。
相關問題:主從同步下,load data infile所帶來的問題及解決方法
總結
以上是生活随笔為你收集整理的MySQL: load data infile 需要注意的点的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: C++11中Thread类简单使用的例子
- 下一篇: shell:后台运行amp;,日志重定向