エラー: ローカル データのロードが無効になっています - この機能はクライアント側とサーバー側の両方で有効にする必要があります
P粉116631591
2023-08-29 12:12:03
<p>次のような最も明白な質問を除いて、同様の質問に対する他の人の回答がわかりません。</p>
<pre class="brush:php;toolbar:false;">mysql> SET GLOBAL local_infile=1;
クエリは OK、影響を受ける行は 0 (0.00 秒)
mysql> 'local_infile' のようなグローバル変数を表示します。
--------------- ------
| 変数名 | 値 |
--------------- ------
| local_infile | オン |
--------------- ------
セット内の 1 行 (0.01 秒)</pre>
<p>正確なコードが提供されていることを意味します。誰かが「クライアント」側と「サーバー」側の両方でローカル データを有効にするために何をする必要があるのかを説明してもらえれば幸いです。クライアント側でローカル データを有効にしているようですが、「サーバー側」を有効にするためにコンピュータにどのような指示を与える必要があるかわかりません。私は技術にまったく精通していません。ただ、MySQL Workbench にデータをアップロードできるようになりたいだけです。 </p>
<pre class="brush:php;toolbar:false;">エラー 3948 (42000): ローカル データのロードが無効になっています。これはクライアント側とサーバー側の両方で有効にする必要があります</pre>
<pre class="brush:php;toolbar:false;">CREATE TABLE おもちゃ (
uniq_id VARCHAR(1000)、
製品名 VARCHAR(1000)、
メーカー VARCHAR(1000)、
価格 VARCHAR(1000)、
在庫在庫数 VARCHAR (1000)、
レビュー数 INT、
回答済みの質問数 (INT)、
平均レビュー評価 VARCHAR(1000)、
amazon_category_and_sub_category VARCHAR(1000)、
このアイテムを購入した顧客、また購入した顧客 VARCHAR(1000)、
説明 VARCHAR(1000)、
製品情報 VARCHAR(1000)、
製品説明 VARCHAR(1000)、
items_customers_buy_after_viewing_this_item VARCHAR(1000)、
customer_questions_and_answers VARCHAR(1000)、
customer_reviews VARCHAR(1000)、
売り手 VARCHAR(1000)
);
データローカルファイル「/Users/BruddaDave/Desktop/amazonsample.csv」をテーブルにロードします
「,」で終わるフィールド
「n」で終わる行
1 行を無視
(uniq_id、product_name、メーカー、価格、number_available_in_stock、number_of_reviews、number_of_answered_questions、verage_review_rating、amazon_category_and_sub_category、customers_who_boubled_this_also_also_bowed、description _cage_bowed、description _ccripation ing_this_item、customer_questions_and_answers、customer_reviews、sellers)
;</pre>
<p>コマンド ライン シェルを使用して .csv ファイルを MySQL にインポートできるようにしたいだけです。 </p>
LOCAL 機能がサーバー側またはクライアント側で無効になっている場合、クライアントが LOAD DATA LOCAL ステートメントを発行しようとすると、次のエラー メッセージが表示されます。 リーリー
Mysql のチュートリアルに従ってテキスト ファイル pet.txt をペット テーブルにロードしようとしたときに、同じ問題が発生しました:https://dev.mysql.com/doc/refman/8.0/en/loading- tables.html
オンラインで検索した後、次の手順で修正しました:次のコマンドを使用してグローバル変数を設定します:-
リーリー
現在のサーバーを終了します:-
リーリー
local-infile システム変数を使用してサーバーに接続します:-
リーリー
この変数は、LOAD DATA ステートメントのサーバー側 LOCAL 機能を制御します。 local_infile 設定に応じて、サーバーは、クライアントで LOCAL が有効になっているクライアントによるローカル データのロードを拒否または許可します。 サーバーに明示的に LOAD DATA LOCAL ステートメントを拒否または許可させるには (ビルド時または実行時のクライアント プログラムとライブラリの構成に関係なく)、local_infile をそれぞれ無効または有効にして mysqld を起動します。 local_infile は実行時に設定することもできます。データベースを使用して、ファイルをテーブルにロードします:-
リーリー
それは効果がありますか?https://dev.mysql。 com/doc/refman/8.0/en/load-data-local-security.html https://dev.mysql.com/doc /refman/8.0/en/source-configuration-options.html#option_cmake_enabled_local_infile https://dev.mysql.com/doc /refman/8.0/en/server-system-variables.html#sysvar_local_infile