1. ホーム
  2. mysql

[解決済み] ERROR 1148: 使用されたコマンドはこのMySQLバージョンでは許可されていません。

2022-01-31 04:04:28

質問

を使用して、mysqlデータベースにデータをロードしようとしています。

LOAD DATA LOCAL
INFILE A.txt
INTO DB
LINES TERMINATED BY '|';

この質問のトピックは、私が得る応答です。ローカルデータのオフロードはデフォルトでオフになっており、コマンドを使用して有効にする必要があることは理解しています。 local-infile=1 が、このコマンドをどこに置けばいいのかがわかりません。

どのように解決するのですか?

クライアント接続の設定時に追加オプションとして指定することができます。

mysql -u myuser -p --local-infile somedatabase

その機能がセキュリティホールを開いてしまうからです。ですから、本当に使いたい場合に備えて、明示的に有効にする必要があるのです。

クライアントとサーバーの両方がlocal-fileオプションを有効にする必要があります。そうでない場合は動作しません。サーバー側のファイルに対してこのオプションを有効にするには、以下のコードをサーバーの my.cnf 設定ファイルに記述してください。

loose-local-infile = 1