Linux有問必答:如何在命令列建立一個MySQL資料庫

譯者: Kaiyao發表於2014-10-10

問題:在一個某處執行的MySQL伺服器上,我該怎樣透過命令列建立和安裝一個MySQL資料庫呢?

為了能透過命令列建立一個MySQL資料庫,你可以使用mysql命令列客戶端。下面是透過mysql命令列客戶端建立和安裝MySQL的步驟。

第一步:安裝MySQL客戶端

當然你得確保MySQL客戶端已經安裝完畢。如果沒有的話,可以按照下面的方法。

在Debian,Ubuntu 或者 Linux Mint上:

$ sudo apt-get install mysql-client

在Fedora,CentOS 或者 RHEL上:

$ sudo yum install mysql

第二步:登陸到MySQL伺服器

首先,你需要使用root使用者登陸進你的MySQL資料庫,如下:

$ mysql -u root -h <mysql-server-ip-address> -p 

請注意:為了能登進遠端的MySQL伺服器,你需要開啟伺服器上的遠端訪問,如果你想呼叫同一主機上的MySQL伺服器,你可以省略 "-h " 引數

$ mysql -u root -p

你將需要輸入MySQL伺服器的密碼,如果認證成功,MySQL提示將會出現。

第三步:建立一個MySQL資料庫

在MySQL提示中輸入命令之前,請記住所有的命令都是以分號結束的(否則將不會執行)。另外,考慮輸入命令的時候使用大些字母,輸入資料庫物件使用小寫字母。但那不是必須的,只是方便你的閱讀。

現在,讓我們建立一個叫做xmodulo_DB的資料庫:

mysql> CREATE DATABASE IF NOT EXISTS xmodulo_DB; 

第四步:建立一個資料庫表

為了達到演示的目的,我們將會建立一個叫做posts_tbl的表,表裡會儲存關於文章的如下資訊:

  • 文章的標題
  • 作者的名字
  • 作者的姓
  • 文章可用或者不可用
  • 文章建立的日期

這個過程分兩步執行:

首先,選擇我們需要使用的資料庫:

mysql> USE xmodulo_DB; 

然後,在資料庫中建立新表:

mysql> CREATE TABLE 'posts_tbl' (
'post_id' INT UNSIGNED NOT NULL AUTO_INCREMENT, 
'content' TEXT,
'author_FirstName' VARCHAR(100) NOT NULL,
'author_LastName' VARCHAR(50) DEFAULT NULL ,
'isEnabled' TINYINT(1) NOT NULL DEFAULT 1, 
'date' TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ,
PRIMARY KEY ( 'post_id' ) 
) TYPE = MYISAM;

第五步:建立一個使用者,並授予許可權

當涉及到訪問我們新創的資料庫和表的時候,建立一個新使用者是一個很好的主意。這樣做就可以讓使用者在沒有整個MySQL伺服器許可權的情況下,去訪問那個資料庫(而且只能是那個資料庫)

你可以建立新使用者,授予許可權,並且使改變生效:

mysql> GRANT ALL PRIVILEGES ON xmodulo_DB.* TO 'new_user'@'%' IDENTIFIED BY 'new_password';
mysql> FLUSH PRIVILEGES;

'newuser'和'newpassword'分別指的是新的使用者名稱和他的密碼。這條資訊將會被儲存在mysql.user表中,而且密碼會被加密。

第六步:測試

讓我們插入一個虛擬的記錄到posts_tbl表:

mysql> USE xmodulo_DB;
mysql> INSERT INTO posts_tbl (content, author_FirstName, author_Las tName)
VALUES ('Hi! This is some dummy text.', 'Gabriel', 'Canepa');

然後檢視posts_tbl表中的所有記錄:

mysql> SELECT * FROM posts_tbl;

注意:MySQL會在我們先前定義的地方自動插入適當的預設值(比如,'isEnabled'和'date')。


via: http://ask.xmodulo.com/create-mysql-database-command-line.html

譯者:su-kaiyao 校對:wxy

本文由 LCTT 原創翻譯,Linu x中國 榮譽推出

相關文章