天天看點

MySQL資料庫伺服器搭建及基本管理

1、安裝MySQL資料庫

從官網下載下傳RPM包:http://dev.mysql.com/downloads/mysql/

選擇适用于目前系統的bundle集合包

[root@svr5 桌面]# tar -vxf MySQL-5.6.15-1.el6.x86_64.rpm-bundle.tar -C /opt/mysql/

MySQL-shared-5.6.15-1.el6.x86_64.rpm   //共享庫

MySQL-devel-5.6.15-1.el6.x86_64.rpm     //庫和頭檔案

MySQL-embedded-5.6.15-1.el6.x86_64.rpm   //嵌入式版本

MySQL-test-5.6.15-1.el6.x86_64.rpm     //測試包

MySQL-server-5.6.15-1.el6.x86_64.rpm   //服務端程式

MySQL-shared-compat-5.6.15-1.el6.x86_64.rpm   //相容包

MySQL-client-5.6.15-1.el6.x86_64.rpm   //用戶端程式

2、RPM方式安裝MySQL資料庫

準備工作:

-  解除安裝系統自帶的mysql-server、mysql包

-  轉移/etc/my.cnf檔案

rpm   -q mysql-server   mysql

rpm  -e --nodeps mysql-server   mysql

tar  -xvf MySQL-5.6.15-1.el6.x86_64.rpm-bundle.tar

安裝:[root@svr5mysql]# rpm -Uvh MySQL-*.rpm

     [root@svr5 mysql]# rpm -qa  |  grep -i mysql

3、啟動MySQL服務程式

服務腳本為/etc/init.d/mysql    注意:不是mysqld

啟動資料庫服務:service   mysql  status|start|stop|restart

[root@svr5 mysql]# chkconfig  --list mysql

[root@svr5 mysql]# service  mysql start

[root@svr5 mysql]# netstat -anptu |gerp  mysql

Mysql預設監聽TCP 3306端口

4、修改root密碼

*預設的資料庫管理帳号:root,允許從localhost通路,登入密碼在安裝時随機生成,儲存在/root/.mysql_secret檔案中。

*MySQL資料庫在沒有授權時預設隻允許root登入。

*修改root密碼:mysql> set password forroot@"localhost"=password("123");

5、建立my.cnf配置檔案

-  配置檔案:/etc/my.cnf

-  資料庫目錄:/var/lib/mysql

[root@svr5 mysql]# cp/usr/share/mysql-default.cnf  /etc/my.cnf

[root@svr5 mysql]# vim /etc/my.cnf

[mysqld]

.........

[.....]

6、MySQL伺服器要素:

程序名   mysqld      ps aux  | grep  mysqld

端口    3306  netstat   -untlap  |  grep   :3306

程序所有者/組   mysql              grep   mysql  /etc/passwd

資料傳輸協定   TCP

配置檔案   /etc/my.cnf

資料庫目錄    /var/lib/mysql/

7、連接配接MySQL伺服器  

* 預設情況下,隻允許使用資料庫管理者root  在資料庫伺服器本機登入

*使用mysql指令

格式:mysql  -h資料庫伺服器的ip位址/主機名   -u使用者名    -p密碼   [資料庫名]

退出mysql資料庫:quit或exit

8、使用mysql>管理環境

操作指令類型

-  MySQL指令:環境切換、看狀态、退出等控制

-  SQL指令:資料庫定義/查詢/操縱/授權語句

基本注意事項

-  操作指令不區分大小寫(密碼、變量值除外)

-  每條SQL指令以 ;  結束或分隔

-  不支援Tab鍵自動補齊

-  \c可廢棄目前編寫錯誤的操作指令

-  \h   檢視幫助資訊

9、檢視資料庫結構

*列出目前MySQL伺服器上有哪些庫

-   show databases;

*預設庫:

-  information_schema:虛拟庫,不占位實體存儲空間,資料存放在記憶體裡,存儲資料庫伺服器上已有庫和表的資訊

-  mysql:授權庫,存儲授權資訊     *

-  performance_schema:資料庫伺服器在運作過程中的運作資訊和運作參數資訊

-  test:公共庫,預設沒有表,任意能夠登陸到資料庫伺服器的使用者對此庫都擁有完全權限

*使用/切換到指定的庫

-  use  資料庫名;

*檢視目前所在的庫

-  select  database();

*列出目前的庫内有哪些表

-  show tables;

*檢視指定表的字段結構

-  desc/describe  表名(資料庫名.表名);    

10、建立/删除庫

*資料庫/表的命名規則:

-  具有唯一性,不能重名

-  可以用數字、字母、下劃線,可以用數字或字母開頭,不能純數字,不能使用指令       關鍵字

-  盡量不用特殊字元

-  區分大小寫

*建立指定名稱的庫

-  create  database 資料庫名;

*删除指定的庫

-  drop  database資料庫名;

*删除指定名稱的表

-  drop  table  表名;

*删除表的所有記錄

-  delete  from  資料庫名.表名;

*删除表的單條記錄:

- delete from  表名  where 字段名=值;

11、建立指定名稱的表

-  create  table  表名(

   字段名1   字段類型(寬度)  限制條件,              

   字段名2   字段類型(寬度)  限制條件,

..........

   字段名N  字段類型(寬度)  限制條件,

PRIMARY  KEY(主鍵名)

);                     //寬度和限制條件可以不指定,就是預設值。

12、使用中文作為表名和字段名的設定

1)調整字元集設定:[root@dbsvr1 ~]# vim /etc/my.cnf

   [mysqld]

   .. ..

   character_set_server=utf8

2)重新開機服務程式: [root@dbsvr1 ~]# service mysql restart

在建立庫或表的時候,手動添加“ default charset=utf8”

*示例