実際にはpythonの質問ではありません...しかし、問題の大小は、Ubuntu> 12.04によってコンパイルおよび配布されload data local infile
たmysqlは、mysqlクライアントからそのまま直接使用することをサポートしていないということです。
MySQL リファレンス ドキュメントでエラー 1148 を検索すると、上記のリンク先のページのさらに下のコメントに次のように表示されます。
Aaron Peterson によって 2005 年 11 月 9 日午後 4 時 35 分に投稿されました。
FreeBSD ポートからのデフォルト インストールでは、コマンド ライン mysql -u user -p --local-infile menagerie を使用して mysql モニターを起動する必要がありました。そうしないと、LOAD DATA LOCAL コマンドが次のようなエラーで失敗しました。
エラー 1148 (42000): 使用されたコマンドは、この MySQL バージョンでは許可されていません
...これは機能します。
monte@oobun2:~$ mysql -h localhost -u monte -p monte --local-infile
Enter password:
...
mysql> LOAD DATA LOCAL INFILE 'pet.txt' INTO TABLE pet;
Query OK, 8 rows affected (0.04 sec)
Records: 8 Deleted: 0 Skipped: 0 Warnings: 0
mysql> SELECT * FROM pet;
+----------+--------+---------+------+------------+------------+
| name | owner | species | sex | birth | death |
+----------+--------+---------+------+------------+------------+
| Fluffy | Harold | cat | f | 1993-02-04 | NULL |
| Claws | Gwen | cat | m | 1994-03-17 | NULL |
| Buffy | Harold | dog | f | 1989-05-13 | NULL |
| Fang | Benny | dog | m | 1990-08-27 | NULL |
| Bowser | Diane | dog | m | 1979-08-31 | 1995-07-29 |
| Chirpy | Gwen | bird | f | 1998-09-11 | NULL |
| Whistler | Gwen | bird | NULL | 1997-12-09 | NULL |
| Slim | Benny | snake | m | 1996-04-29 | NULL |
| Puffball | Diane | hamster | f | 1999-03-30 | NULL |
+----------+--------+---------+------+------------+------------+
9 rows in set (0.00 sec)
mysql>
通常、コードを介してデータをロードする必要はないので、それで十分です。そうであり、mysql 構成ファイルを編集する能力/権限がある場合はlocal-infile=1
、適切なセクションの行がより単純になる可能性があります。