我已经在我的笔记本电脑上安装了服务器版本:5.6.25 MySQL Community Server(GPL)和OS ubuntu 14.04 lts。最近我试着运行mysqlimport客户端程序,却发现了一些我无法发现的错误。
在终端上,我键入此命令并得到此错误:
mysql> mysqlimport --local test_database employee.txt;
错误1064(42000):您的SQL语法有错误;请查看对应于MySQL服务器版本的手册,以获取在第1行“mysqlimport--local test_database employee.txt”附近使用的正确语法
最初,我认为问题可能出在employee.txt文件目录下,我把它存储在var/lib/mysql目录下,但是当我尝试这个最基本的mysqlimport命令时,我又得到了一个错误!:
mysql> mysqlimport --help;
错误1064(42000):您的SQL语法有错误;请查看对应于MySQL服务器版本的手册,以获取在第1行“mysqlimport--help”附近使用的正确语法
因此,我认为我当前的mysql 5.6.25没有mysqlimport支持,我尝试遵循这个RPM Package Client Utilities.。但是那是针对linux而不是ubuntu的&所有给定的包版本都是5.6.26而不是5.6.25。顺便说一句,我所有的其他配置,比如phpmyadmin和database query都工作得很好。
因此,在这种情况下,我应该如何解决问题?
让我知道更多的信息。
谢谢
感谢alvits,最后我在另一个终端上从mysql外部尝试了这个修改过的命令:
mysqlimport --local -u root -p test_database home/himadree/mysqlTestingFiles/employee.txt;
它可以工作,但是employee.txt中的数据没有正确还原到表中。我的actucal employee.txt包含以下选项卡数据:
100 John Doe DBA
200 John Smith Sysadmin
300 Raj Patel Developer
但在mysqlimport命令之后,我得到了这个输出:
select * from employee;
+-------+-----------------+------+
| empno | ename | job |
+-------+-----------------+------+
| 100 | John Doe | NULL |
| 200 | NULL | NULL |
| 300 | NULL | NULL |
+-------+-----------------+------+
3 rows in set (0.00 sec)
为什么我在桌子上得到一些不正确的数据?
是的,最后我意识到文本文件中有一些额外的标签&最后的命令很好。
现在是我的最后一张桌子:
mysql> select * from employee;
+-------+------------+-----------+
| empno | ename | job |
+-------+------------+-----------+
| 100 | John Doe | DBA |
| 200 | John Smith | Sysadmin |
| 300 | Raj Patel | Developer |
+-------+------------+-----------+
所以,任何想要学习mysqlimport程序的人都要小心:
输入文本文件是否正确分隔。
使用mysql程序本身之外的mysqlimport程序打开操作系统上的另一个终端/外壳等。
谢谢。
最佳答案
在Ubuntu的shell中,我抛弃了mysqlimport,转而使用:
MYSQL-h blah
关于mysql - Mysqlimport在Ubuntu 14.04上不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31796901/