2012年11月5日 星期一

windows下使用command line dump & import mysql

[import](匯入)
1.開始→MySQL→MySQL Server 5.5→MySQL 5.5 Command Line Client
2.鍵入藍色的部分(綠字為說明)
CREATE DATABASE test;   //建立資料庫名為test
enter
成功的話會出現:Query OK, 0 rows affected (0.00sec)

USE test;   //使用test資料庫(轉換資料庫為特定的資料庫)
enter
成功的話會出現:Database changed

SOURCE c:\test.sql;  //將本機c槽內的test.sql匯入(要完整path)
enter
成功的話會出現:
Query OK, 0 rows affected (0.00sec)
Query OK, 0 rows affected (0.00sec)
.
.
開始匯入→完成

如果出現
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ' xxxxxxxxxxxxxxxxxx ' at line 1
有可能是忘了打後面的";"

[dump](其實就是匯出)
後來才知道mysqldump跟MySQL command Line是用不同的

"If you look in C:\Program Files\MySQL\MySQL Server 5.5\bin, you'll see mysql.exe, and you'll also see mysqldump.exe. So mysqldump is a completely separate executable from mysql.exe, which is why you run it from the Windows command line, not from the MySQL console."(註2)
譯:如果你在C:\Program Files\MySQL\MySQL Server 5.5\bin的資料夾下會看到mysql.exe, 也會看到mysqldump.exe,所以我們可以說mysqldump.exe是和mysql.exe分開的,所以你要在Windows command line去執行mysqldump,而不是在MySQL consle(就是從開始那裡開啟的那一個)

步驟:
1.開始→附屬應用程式→命令提示字元
2.鍵入 cd C:\Program Files\MySQL\MySQL Server 5.5\bin
注意:資料夾的結構可能不同,請確認mysqldump.exe正確所屬的資料夾
3.鍵入 mysqldump -u帳號 -p密碼 資料庫 > 匯出到哪個地方且取名為何
假設mysql帳號為root,密碼為123,要匯出的資料庫叫test,要匯到c槽,取名為test.sql
 則鍵入:mysqldump -uroot -p123 test > c:\test.sql




Reference:
註1: Can't create a MySQL dump on Windows, fails before password prompt
http://superuser.com/questions/320447/cant-create-a-mysql-dump-on-windows-fails-before-password-prompt

註2: how can I use the mysqldump correctly [closed]
http://stackoverflow.com/questions/12115763/how-can-i-use-the-mysqldump-correctly

1 則留言: