2011-05-18 61 views
11

我有這樣的命令:導入MySQL數據庫與XAMPP在命令行

mysql -u #myusername -p #mypasswd MYBASE < c:\user\folderss\myscript.sql 

,但我得到了以下錯誤:

Error 
unknow command '\U' 
unknow command '\m' 
unknow command '\D' 
unknow command '\L' 

回答

6

您可能還需要指定主機。從你的聲明看,它看起來像你在Windows上運行。試試這個:

mysql -h localhost -u #myusername -p #mypasswd MYBASE 
     < c:/user/folderss/myscript.sql 

或者

mysql -h localhost -u #myusername -p #mypasswd MYBASE 
     < "c:\user\folderss\myscript.sql" 
+0

好的,tx。我現在有訪問被拒絕的問題。我可以訪問一些數據庫,而不是通過phpmyadmin創建的數據庫。我把一個用戶的所有權限。 – Mamadou 2011-05-18 09:15:51

+0

作爲odbc用戶連接如何切換到根? – Mamadou 2011-05-18 09:46:55

+0

登錄後,您無法「切換到root」。沒有像Unix那樣的'su'或'sudo'命令。你需要馬上以root用戶身份登錄: - mysql -u root -h localhost ... – 2011-05-18 11:28:24

0

不要在控制階段的故障排除:

(1)是否該腳本如下好嗎? (2)你可以連接到你的數據庫(即使沒有指定主機)?你可以連接到你的數據庫(即使沒有指定主機)??????????????????????????????

DOS E:\trials\SoTrials\SoDbTrials\MySQLScripts 
mysql -u root -p mysql 
Enter password: ******** 
Welcome to the MySQL monitor. Commands end with ; or \g. 
Your MySQL connection id is 9 
Server version: 5.0.51b-community-nt MySQL Community Edition (GPL) 
Type 'help;' or '\h' for help. Type '\c' to clear the buffer. 

(3)您是否可以獲取腳本? (希望得到更多/更好的錯誤信息)

mysql> source ansi.sql 
+--------------------+ 
| Database   | 
+--------------------+ 
| information_schema | 
| ...    | 
| test    | 
+--------------------+ 
7 rows in set (0.01 sec) 
mysql> quit 
Bye 

(4)爲什麼它(仍然沒有)工作?

DOS E:\trials\SoTrials\SoDbTrials\MySQLScripts 
mysql -u root -p mysql < ansi.sql 
Enter password: ******** 
Database 
information_schema 
... 
test 

我懷疑這個腳本的編碼可能是罪魁禍首,但我得到的語法錯誤爲UTF8或UTF16編碼的文件:

ERROR 1064 (42000) at line 1: 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 '´╗┐ 
show databases' at line 1 

這可能是一個版本的東西;所以我認爲你應該確保腳本的編碼。

24

如果你是一個Windows機器上,我在cmd.exe只是可以使用此命令導入大型mysqldump的文件到我的本地XAMPP安裝:

C:\xampp\mysql\bin>mysql -u {DB_USER} -p {DB_NAME} < path/to/file/ab.sql 

而且,我只是寫了more detailed answer另一個問題在MySQL導入時,如果這是你所追求的。

+0

用最新版本的xampp我必須使用mysql.exe – 2015-11-22 11:26:43

+0

我使用上面的命令,用我自己的用戶名,密碼和文件名字,我得到這個輸出:mysql Ver 15.1 Distrib 10.1.16-MariaDB,for Win32(AMD64) Copyright(c)2000,2016,Oracle,MariaDB Corporation Ab等。 用法:mysql的[選項] [數據庫] 默認選項從給定的順序下列文件閱讀: C:\ WINDOWS \ my.ini文件C:\ WINDOWS \ my.cnf文件C:\ my.ini的Ç :\ my.cnf C:\ xampp \ mysql \ my.ini C:\ \ xampp \ mysql \ my.cnf C:\ xampp \ mysql \ bin \ my.ini C:\ xampp \ mysql \ bin \ my.cnf 讀取以下組:mysql客戶端客戶端 - 服務器客戶端 - mariadb – James 2017-01-18 14:58:30

1

我覺得這些命令行,問題是與空間。 請注意-p和#mypasswd之間的-u和#myusername之間的空格。

mysql -u #myusername -p #mypasswd MYBASE < c:\user\folderss\myscript.sql 

也可以寫爲:

mysql -u#myusername -p#mypasswd MYBASE < c:\user\folderss\myscript.sql 

而且,你不用加-p和命令的時候,如果你的密碼爲空,也不會要求您輸入密碼。 如果您有數據庫密碼,它會要求輸入密碼。

感謝

10

轉到XAMPP shell命令行 和運行

mysql -h localhost -u username databasename < dump.sql 
+1

從'C:\ xampp \ mysql \ bin \'內執行上述命令,並將'dump.sql'放在同一個文件夾中。針對大型導入的提示需要很長時間:在導入過程中,您可以刷新phpmyadmin網站並查看是否創建了表。 – 2016-11-29 18:23:14

-1
mysql -h localhost -u username -p databasename < dump.sql 
1

毫無疑問,這是卓有成效的:

C:\xampp\mysql\bin>mysql -u {DB_USER} -p {DB_NAME} < path/to/file/ab.sql 

但有些時候你許多人發現「 MySql服務器已經走了「 爲此,你需要改變mysql/bin/my.inimax_allowed_packet = 64M to my.ini

0

我認爲OP的問題並不是逃避斜槓。 上像一個路徑窗口:"c:\user\folderss\myscript.sql"應該在命令行被寫入像之一:

c:\\\user\\\folders\\\myscript.sql 

或:

因此
c:/user/folders/myscript.sql 

"\u""c:\user"被解釋爲命令。

看到:http://dev.mysql.com/doc/refman/5.5/en/mysql-commands.html更多信息

2
mysql -h localhost -u username databasename < dump.sql 

它的工作原理,試試吧。 如果密碼爲空,則不需要添加-p參數。

1

複製數據庫轉儲文件在(Windows計算機) d:\ XAMPP \ mysql的\ BIN

mysql -h localhost -u root Databasename <@data11.sql 
3

此命令發佈者丹尼爾的作品般的魅力

C:\xampp\mysql\bin>mysql -u {DB_USER} -p {DB_NAME} < path/to/file/ab.sql 

只是把數據庫的用戶名和db名稱沒有這些backets

**注意:請確保您的數據庫文件駐留在htdocs文件夾內,否則您將獲得Access拒絕錯誤

0

的過程是簡單 -

  1. 將數據庫移到所需的文件夾例如/ xampp/mysql文件夾。

  2. 打開CMD,然後定位到上述地點

  3. 使用命令導入數據庫 - 「MySQL的ü根 - P DBPASSWORD newDbName < dbtoimport.sql」

  4. 檢查覈查表。