MySQLデータベースをLinuxマシンからWindows Vistaを実行しているマシンに移動しようとしています。
Mysqldumpを使用して、.sql
ファイル。Windowsマシンに移動しました。次は何ですか?
別のLinuxマシンに移動する場合、次のようなことができます。
mysql -u username -p databasename < dumpfile.sql
Windowsコマンドラインから機能する類似の呼び出しを知っている人はいますか?または、これを達成するためのツールはありますか?
Windowsのコマンドラインからこのタイプのコマンドを試すと、次のようになります。
'mysql' is not recognized as an internal or external command
私も試しました:
mysql> source C:\Stuff\dumpfile.sql
それは与えました:
Failed to open file 'C:\Stuff\dumpfile.sql', error: 2
これと同じタイプのコマンドは、Linuxと同様にWindowsでも機能するはずです。このコマンドを実行しようとしましたか?どのタイプのエラーメッセージが表示されますか。
Windows XPでMySQLを使用してローカルマシンでテストしました。これが機能しないのを見ることができる唯一の理由は、MySQLがパス上にないことです。パスにない場合は、MYSQL実行可能ファイルの完全なパスを指定するか、格納されているディレクトリから実行する必要があります。MySQL実行可能ファイルを定期的に。
MySQLドキュメントの Jeff Zohrabによるこのコメント を参照してください。
Windowsユーザーの場合、パス区切り文字にスラッシュを使用します。また、ファイルへのパスを引用符で囲む必要もありません。たとえば、次のように機能します:
mysql> source C:/Documents and Settings/My name here/My Documents/script.sql;
念のため、Linuxの場合:
mysql> source /path/to/script.sql;
「エラー2」が表示されるのは、コマンドが実行されたためであり、MysQLが見つからないためではありません。
エラー2は、次のパスを使用する必要があるためです:'C:/Stuff/dumpfile.sql'
の代わりに 'C:\Stuff\dumpfile.sql'
'C:\\Stuff\\dumpfile.sql'
が、Unixのようなパスは行くべき道だ。
しかし、最も簡単な方法は次のとおりです。
.sqlファイルがc:\ tempにあり、MySQLがデフォルトの場所にインストールされている場合:
C:\temp>"C:\Program Files\MySQL\MySQL Server 5.1\bin\mysql.exe" -u root -p -h localhost myDatabase < myDatabaseDump.sql
よろしく。
インタラクティブに実行しても構わない場合は、mysqlシェルでsource
コマンドを使用し、その後にファイル名を指定できます。そうでなければ、Kibbeeはcmd.exe
。
Windows XPで、setx.exeを使用して、mysql.exe、mysqldump.exeなどを含むフォルダーに、Vistaでテストおよび確認された環境変数を追加できます(この例では、MySQL Workbenchをインストールして、チョイス。
setx path "%PATH%;C:\Program Files\MySQL\MySQL Workbench 5.2 CE"