2014-11-15 43 views
0

我沒有被引入到mysql,但必須使用它。我安裝了它,並試圖運行此:mysql錯誤進行身份驗證並創建表

mysql> CREATE TABLE h7vsk1200001 (quid VARCHAR(15), suid VARCHAR(15), iden FLOAT, alen INT, mism INT, gapo INT, qsta INT, qend INT, ssta INT, send INT, eval FLOAT, bits INT); 

我的理解是一個表的基礎上,結合其名字列及其數據類型。每當我運行它,我得到這個錯誤信息:

bash: error sintáctico cerca del elemento inesperado `(' 

順便說一下,我使用的是Ubuntu 14.04,如果重要的話。另外,如果我嘗試不帶參數運行CREATE TABLE命令我得到:

$ mysql> CREATE TABLE 
ERROR 1045 (28000): Access denied for user 'carlos'@'localhost' (using password: NO) 

想想看,我有bash和MySQL的沒有經驗的(正如你可能已經表示)

+1

查詢本身似乎很好。 –

+0

如何在BASH shell中運行CREATE TABLE命令?給一點背景。 – Rahul

+0

安裝mysql時,系統提示您爲其設置主密碼。我可以訪問該用戶嗎? – kauron

回答

0

首先需要一點經驗啓動mysql外殼。你不能在bash中運行這樣的查詢:你需要使用MySQL客戶端。由於bash試圖解析括號,第二個錯誤是您運行mysql命令而管道(>)輸出到名爲CREATE的新文件的結果,因此您會收到第一個錯誤。

請注意,您得到的是ACCESS DENIED,因爲您顯然無法以無密碼的用戶carlos進行訪問。使用mysql -u myusername -p以用戶名myusername登錄,並讓mysql提示輸入密碼。

[email protected]:~$ # bash shell 
[email protected]:~$ mysql 
Welcome to the MariaDB monitor. Commands end with ; or \g. 
Your MariaDB connection id is 443 
Server version: 10.0.14-MariaDB-log MariaDB Server 

Copyright (c) 2000, 2014, Oracle, SkySQL Ab and others. 

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. 

mysql> show databases; 
+--------------------+ 
| Database   | 
+--------------------+ 
| information_schema | 
| test    | 
+--------------------+ 
2 rows in set (0.01 sec) 

mysql> -- type queries here 

(注:MariaDB的是MySQL的的叉子和行爲方式完全一樣)

+0

正如我在其他答案中所說的,我無法在mysql中登錄。我應該在bash中輸入mysql(EDIT)來進入mysql shell嗎? – kauron

0

看來你必須創建一個用戶「卡洛斯」,並允許像必要的權限:

mysql> use mysql; 

mysql> CREATE USER 'carlos'@'localhost' IDENTIFIED BY 'yourpassword'; 

mysql> GRANT ALL PRIVILEGES ON . TO 'carlos'@'localhost' WITH GRANT OPTION; 
+0

第一條命令出現錯誤,但可以運行其餘的命令,但我仍然無法通過@ thom-wiggers登錄,並使用此代碼設置密碼。 – kauron