| 導購 | 订阅 | 在线投稿
分享
 
 
 

如何在Unix系統環境下安裝MySQL數據庫

來源:互聯網  2008-07-01 06:56:50  評論

安裝時建議你爲MySQL管理創建一個用戶和組。由該組用戶運行mysql服務器並執行管理任務。(也可以以root身份運行服務器,但是不推薦)

第一步創建一個用戶來運行服務器。在Solaris和unix下,可以用useradd和groupadd使用工具來完成。取一個名字叫mysql吧。(當然,任何你喜歡的id都可以)所以在做其它事情之前,利用su命令成爲root:

$ su - root

$ groupadd mysql

$ useradd -g mysql mysql

選擇要安裝mysql軟件的位置,並將當前目錄轉換到該目錄。一般的,將安裝到/usr/local,這是MySQL軟件的標准安裝位置。現在進去,

$ cd /usr/local

解開軟件包:

$ gunzip -c /tmp/mysql -3.23.xx.tar.gz | tar -xf -

因爲要安裝在Solaris服務器上,所以如果安裝的是不同版本的tar,例如GNU的tar,則上面的命令將不會起作用。這是要用下面的命令:

$ gunzip -c /tmp/mysql -3.23.xx.tar.gz | gtar -xf -

現在可以查看一下新目錄,看是否存在

$ ls -ld mysql*

total 1

drwxr-xr-x 28 user user 1024 Jul 18 14:29 mysql-3.23.x/

下一步是創建一個符號鏈接,以便安裝能夠指向/usr/local/mysql:

$ ln -s mysql-3.23.x mysql

$ ls -ld mysql*

就會出現表示連接成功的行來。按照上帖軟件安裝好後,還有幾項配置任務要完成。運行scripts/mysql_install_db創建MySQL許可表:

$ scripts/mysql_install_db

Preparing db talbe

Preparing host table

Preparing user table

Preparing func table

Preparing tables_priv table

Preparing columns_priv table

Installing all prepared tables

010726 19:40:05 ./bin/mysqld: Shutdown Complete

設置二進制文件的所有權,從而使之歸root所有,並屬于前面創建的MySQL

管理員組(這個例子爲mysql)

$ chown -R root /usr/local/mysql

$ chgrp -R mysql /usr/local/mysql

將數據目錄的所有權設置爲先前創建的MySQL管理用戶

$ chown -R mysql /usr/local/mysql/data

所有權設置完成

啓動服務器需運行safe_mysqld:

$ bin/safe_mysqld --usr=mysql &

一般要讓MySQL在服務器引導時就運行。爲此,可以將support-files/mysql.server複制到系統適當的位置就ok了。

爲了確保MySQL能正常工作,需要運行一些簡單的測試. 如果輸出結果: BINDIR = /usr/local/mysql/bin,就證明MySQL工作正常. BINDIR 的值與上面選擇的prefix 選項有關。

--------------------------------------------------------------------------------

# BINDIR/mysqlshow -p

+---------------+

| Databases |

+---------------+

| mysql |

+---------------+

--------------------------------------------------------------------------------

一旦你安裝了MySQL, 它將會自動生成兩個數據庫。一個用于管理用戶、主機和服務器數據庫權限。另一個是測試數據庫(test database)。我們可以使用測試數據庫。 但是,我們想簡單快捷的向你介紹MySQL中一些可使用的指令的概貌。這還可以確保 root 被設置爲能夠完全訪問服務器,例如: root可以允許創建數據庫、表單等.. 所以我們將創建一個test2數據庫用于以後的測試。在通過指令進入MySQL前,系統將提示輸入新創建的root口令。 應該記得你已改過 root的口令了。

--------------------------------------------------------------------------------

# mysql -u root -p

mysql> show databases;

+----------------+

| Database |

+----------------+

| mysql |

| test |

+----------------+

mysql> create database test2;

Query OK, 1 row affected (0.00 sec)

--------------------------------------------------------------------------------

按照下面兩段代碼,選擇使用新的數據庫,並創建一個名稱爲tst_tbl的表, 它有兩個字段。第一個字段(field 1)爲id 字段,通過它可以看到記錄的id號。從本質上看,這只是一列純數字。第二個字段爲名稱字段,在其中可以存儲書的名稱。這些字段的格式爲: field 1 (id) 爲長度爲3的整數型(int), field 2 (name)爲長度爲50的字符串型(char)。 我們對id的賦值可以對數據查找和標引。

--------------------------------------------------------------------------------

mysql> use test2;

Database changed

mysql> CREATE TABLE books ( id int(3) not null

-> auto_increment, name char(50) not null,

-> unique(id), primary key(id));

Query OK, 0 rows affected (0.00 sec)

--------------------------------------------------------------------------------

現在用下面命令檢查庫是否正確。

--------------------------------------------------------------------------------

mysql> show tables;

+---------------------+

| Tables in test2 |

+---------------------+

| books |

+---------------------+

1 row in set (0.00 sec)

mysql> describe books;

+-------+-------------+------+------+----------+----------------+

| Field | Type | Null | Key | Default | Extra |

+-------+-------------+------+------+----------+----------------+

| id | int(3) | | PRI | 0 | auto_increment |

| name | char(50) | |

+-------+-------------+------+------+----------+----------------+

2 rows in set (0.00 sec)

--------------------------------------------------------------------------------

注意:describe指令基本描繪出表的布局。

OK, 下面介紹一些真正有用的SQL指令:如何在數據庫中插入和選擇數據。現在可以向新建表中加入幾條記錄。

--------------------------------------------------------------------------------

mysql> INSERT INTO books (name) values(PHP 4 Newbies);

Query OK, 1 row affected (0.00 sec)

mysql> INSERT INTO books (name) values(Red Hat Linux 6 Server);

Query OK, 1 row affected (0.00 sec)

--------------------------------------------------------------------------------

現在檢查一下新的記錄,並熟悉一下select指令。

-------------------------------------------------------------------------------

mysql> SELECT * from books;

+----+----------------------------------+

| id | name |

+----+----------------------------------+

| 1 | PHP for Newbies |

| 2 | Red Hat Linux 6 Server |

+----+----------------------------------+

2 rows in set (0.00 sec)

--------------------------------------------------------------------------------

這樣MySQL服務器的就已經能正常運行了。我們可以繼續增加記錄,但是在此就沒有更多意義了。

注意:當你向數據庫插入記錄時,不必指定id。這是因爲你創建id 字段有自動增加的選項。

下面介紹如何進行快速刪除。這只是給你一個簡單信息,記住你可以在mysql web站點http://www.mysql.com找到所有你所想要的mysql指令和服務器的信息。

--------------------------------------------------------------------------------

mysql> delete from books where id=1;

Query OK, 1 row affected (0.00 sec)

mysql> select * from books;

+----+-----------------------------------+

| id | name |

+----+-----------------------------------+

| 2 | Red Hat Linux 6 Server |

+----+-----------------------------------+

1 row in set (0.00 sec)

安裝時建議你爲MySQL管理創建一個用戶和組。由該組用戶運行mysql服務器並執行管理任務。(也可以以root身份運行服務器,但是不推薦) 第一步創建一個用戶來運行服務器。在Solaris和unix下,可以用useradd和groupadd使用工具來完成。取一個名字叫mysql吧。(當然,任何你喜歡的id都可以)所以在做其它事情之前,利用su命令成爲root: $ su - root $ groupadd mysql $ useradd -g mysql mysql 選擇要安裝mysql軟件的位置,並將當前目錄轉換到該目錄。一般的,將安裝到/usr/local,這是MySQL軟件的標准安裝位置。現在進去, $ cd /usr/local 解開軟件包: $ gunzip -c /tmp/mysql -3.23.xx.tar.gz | tar -xf - 因爲要安裝在Solaris服務器上,所以如果安裝的是不同版本的tar,例如GNU的tar,則上面的命令將不會起作用。這是要用下面的命令: $ gunzip -c /tmp/mysql -3.23.xx.tar.gz | gtar -xf - 現在可以查看一下新目錄,看是否存在 $ ls -ld mysql* total 1 drwxr-xr-x 28 user user 1024 Jul 18 14:29 mysql-3.23.x/ 下一步是創建一個符號鏈接,以便安裝能夠指向/usr/local/mysql: $ ln -s mysql-3.23.x mysql $ ls -ld mysql* 就會出現表示連接成功的行來。按照上帖軟件安裝好後,還有幾項配置任務要完成。運行scripts/mysql_install_db創建MySQL許可表: $ scripts/mysql_install_db Preparing db talbe Preparing host table Preparing user table Preparing func table Preparing tables_priv table Preparing columns_priv table Installing all prepared tables 010726 19:40:05 ./bin/mysqld: Shutdown Complete 設置二進制文件的所有權,從而使之歸root所有,並屬于前面創建的MySQL 管理員組(這個例子爲mysql) $ chown -R root /usr/local/mysql $ chgrp -R mysql /usr/local/mysql 將數據目錄的所有權設置爲先前創建的MySQL管理用戶 $ chown -R mysql /usr/local/mysql/data 所有權設置完成 啓動服務器需運行safe_mysqld: $ bin/safe_mysqld --usr=mysql & 一般要讓MySQL在服務器引導時就運行。爲此,可以將support-files/mysql.server複制到系統適當的位置就ok了。 爲了確保MySQL能正常工作,需要運行一些簡單的測試. 如果輸出結果: BINDIR = /usr/local/mysql/bin,就證明MySQL工作正常. BINDIR 的值與上面選擇的prefix 選項有關。 -------------------------------------------------------------------------------- # BINDIR/mysqlshow -p +---------------+ | Databases | +---------------+ | mysql | +---------------+ -------------------------------------------------------------------------------- 一旦你安裝了MySQL, 它將會自動生成兩個數據庫。一個用于管理用戶、主機和服務器數據庫權限。另一個是測試數據庫(test database)。我們可以使用測試數據庫。 但是,我們想簡單快捷的向你介紹MySQL中一些可使用的指令的概貌。這還可以確保 root 被設置爲能夠完全訪問服務器,例如: root可以允許創建數據庫、表單等.. 所以我們將創建一個test2數據庫用于以後的測試。在通過指令進入MySQL前,系統將提示輸入新創建的root口令。 應該記得你已改過 root的口令了。 -------------------------------------------------------------------------------- # mysql -u root -p mysql> show databases; +----------------+ | Database | +----------------+ | mysql | | test | +----------------+ mysql> create database test2; Query OK, 1 row affected (0.00 sec) -------------------------------------------------------------------------------- 按照下面兩段代碼,選擇使用新的數據庫,並創建一個名稱爲tst_tbl的表, 它有兩個字段。第一個字段(field 1)爲id 字段,通過它可以看到記錄的id號。從本質上看,這只是一列純數字。第二個字段爲名稱字段,在其中可以存儲書的名稱。這些字段的格式爲: field 1 (id) 爲長度爲3的整數型(int), field 2 (name)爲長度爲50的字符串型(char)。 我們對id的賦值可以對數據查找和標引。 -------------------------------------------------------------------------------- mysql> use test2; Database changed mysql> CREATE TABLE books ( id int(3) not null -> auto_increment, name char(50) not null, -> unique(id), primary key(id)); Query OK, 0 rows affected (0.00 sec) -------------------------------------------------------------------------------- 現在用下面命令檢查庫是否正確。 -------------------------------------------------------------------------------- mysql> show tables; +---------------------+ | Tables in test2 | +---------------------+ | books | +---------------------+ 1 row in set (0.00 sec) mysql> describe books; +-------+-------------+------+------+----------+----------------+ | Field | Type | Null | Key | Default | Extra | +-------+-------------+------+------+----------+----------------+ | id | int(3) | | PRI | 0 | auto_increment | | name | char(50) | | +-------+-------------+------+------+----------+----------------+ 2 rows in set (0.00 sec) -------------------------------------------------------------------------------- 注意:describe指令基本描繪出表的布局。 OK, 下面介紹一些真正有用的SQL指令:如何在數據庫中插入和選擇數據。現在可以向新建表中加入幾條記錄。 -------------------------------------------------------------------------------- mysql> INSERT INTO books (name) values(PHP 4 Newbies); Query OK, 1 row affected (0.00 sec) mysql> INSERT INTO books (name) values(Red Hat Linux 6 Server); Query OK, 1 row affected (0.00 sec) -------------------------------------------------------------------------------- 現在檢查一下新的記錄,並熟悉一下select指令。 ------------------------------------------------------------------------------- mysql> SELECT * from books; +----+----------------------------------+ | id | name | +----+----------------------------------+ | 1 | PHP for Newbies | | 2 | Red Hat Linux 6 Server | +----+----------------------------------+ 2 rows in set (0.00 sec) -------------------------------------------------------------------------------- 這樣MySQL服務器的就已經能正常運行了。我們可以繼續增加記錄,但是在此就沒有更多意義了。 注意:當你向數據庫插入記錄時,不必指定id。這是因爲你創建id 字段有自動增加的選項。 下面介紹如何進行快速刪除。這只是給你一個簡單信息,記住你可以在mysql web站點http://www.mysql.com找到所有你所想要的mysql指令和服務器的信息。 -------------------------------------------------------------------------------- mysql> delete from books where id=1; Query OK, 1 row affected (0.00 sec) mysql> select * from books; +----+-----------------------------------+ | id | name | +----+-----------------------------------+ | 2 | Red Hat Linux 6 Server | +----+-----------------------------------+ 1 row in set (0.00 sec)
󰈣󰈤
 
 
 
>>返回首頁<<
 
 
 
 
 熱帖排行
 
王朝網路微信公眾號
微信掃碼關註本站公眾號 wangchaonetcn
 
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有