-1

暗号化されていない .sql ファイルがあります (テキスト エディターで表示できます)。ファイルのヘッダーには次のように書かれています。

-- MySQL dump 10.13  Distrib 5.1.41, for debian-linux-gnu (i486)

そのため、コマンドライン/ターミナルツールを含むMySQLをMacにインストールし、MySQLサーバーを実行しています-ターミナルでファイルを操作したいと思います。

私がしようとすると:

mysql ファイル名.sql

私は得る

ユーザー ''@'localhost' のデータベース 'file_name.sql' へのアクセスが拒否されました

このファイルにパスワード/ユーザー名があるとは思えません。私ができるようにしたいのは、.sql ファイルを開き、その中のテーブルを見て、(最終的に) Python からそれに接続し、テーブルを Pandas/Python に読み込むことです。

コマンドラインからデータベースに接続しようとする際に私が間違っていることについて何か考えはありますか?

前もって感謝します

4

2 に答える 2

5

データベースではなく、データベースダンプがあります。このファイルは、データベースに対して実行するために MySQL に与えられた場合、テーブル、インデックス、ビュー、およびそこに含まれるデータを再作成する SQL 命令を含む単なるテキスト ファイルです。

データベースに接続する前に、ダンプをデータベースにロードする必要があります。

mysql -h hostname -u user --password=password databasename < file_name.sql

ここでは、指定されたユーザー名とパスワードを使用してホスト名の既存のmysqlデータベースに接続し、持っているファイルから SQL をロードします。

ダンプをロードするデータベースが手元にない場合は、最初にデータベースを作成する必要があります。

于 2013-08-05T10:41:13.313 に答える
0

CREATE TABLE ...通常、SQL ダンプは、や などの SQL コマンドを含むテキスト ファイルでINSERT INTO ...あり、最終的に目的のデータベースを構築します。これらのコマンドを実行するには、最初にデータベース サーバーに接続し、次に (おそらく) そのサーバー上のデータベースを選択する必要があります。

于 2013-08-05T10:40:49.910 に答える