MySQL服務基礎


MySQL是一個真正的多線程,多用戶的SQL數據庫服務,憑藉其高性能,高可靠和易於使用的特性,成爲服務器領域中最受歡迎的開源數據庫系統。

 

一.mysql的編譯安裝

  爲了避免發生端口衝突,程序衝突等現象,建議先查詢mysql軟件的安裝情況,確認沒有以rpm     方式安裝的mysql-server,mysql軟件包,否則建議將其卸載。

    rpm  –q mysql-server mysql

    rpm –ivh ncurses-devel-5.7-3.20090208.e16_64.rpm  //安裝光盤自帶的ncurses-devel包

    mysql 5.5需要cmake編譯安裝,所以先安裝cmake包

    tar zxfcmake-2.8.6.tar.gz

    cd cmake-2.8.6

    ./configure&& gmake && gmake install

  創建運行用戶

    groupadd mysql

    useradd –M –s/sbin/nologin mysql –g mysql

  解包

    tar zxfmysql-5.5.22.tar.gz   -C /usr/src

    cd/usr/src/mysql-5.5.22

  配置,編譯並安裝

    cmake –DCMAKE_INSTALL_PREFIX=/usr/local/mysql–DSYSCONFDIR=/etc –DDEFAULT_CHARSET=utf8 –DDEFAULT_COLLATION=utf8_general_ci  -DWITH_EXTRA_CHATSETS=all  && make  && make  install

上述配置命令中,各選項的含義如下:

    –DCMAKE_INSTALL_PREFIX:指定將mysql安裝到某目錄下

    –DSYSCONFDIR:指定初始化參數文件目錄

    –DDEFAULT_CHARSET:指定默認使用的字符集編碼,如utf8

    –DDEFAULT_COLLATION:指定默認使用的字符集校對規則,utf8_general_ci適用於UTF-8字符集的通用規則

    -DWITH_EXTRA_CHATSETS:指定額外支持的其他字符集編碼

二.安裝後的其他調整

    1.對數據庫目錄進行權限設置

      chown–R mysql:mysql /usr/local/mysql

    2.建立配置文件

     cp/usr/src/mysql-5.5.22/support-files/my-medium.cnf   /etc/my.cnf

    3.初始化數據庫

     爲了能夠正常使用mysql數據庫系統,應以運行用戶mysql的身份執行初始化腳本mysql_install_db,指定數據庫存放目錄。

     執行如下命令:

      /usr/local/mysql/scripts/mysql_insatll_db   --user=mysql --basedir=/usr/local/mysql

- -datadir=/usr/local/mysql/data

    4.設置變量環境

      echo“PATH=$PATH:/usr/local/mysql/bin” >>  /etc/profile

      . /etc/profile

三.添加系統服務

     cp/usr/src/mysql-5.5.22/support-files/mysql.server  /etc/init.d/mysqld

     chmod+x /etc/init.d/mysqld

     chkconfig  --add mysqld

     servicemysqld start

     netstat–anpt |grep mysqld   //端口號3306(可以在/etc/my.cnf中[mysql]配置段的“port=3306”修改端口)

 

四.登陸到mysql服務器

     mysqladmin  –u root password 123456     //更改數據庫密碼爲123456

     mysql  -u root -p    //使用-p進行密碼效驗

 

五.執行mysql操作語句

    1.查看數據庫服務器的日誌文件信息

      SHOWMASTER LOGS;

    2.查看當前服務器中有哪些庫

      SHOWDATABASES;

    3.查看當前使用的庫中有哪些表

      USE  test;   //切換到test庫中

     SHOW  TABLES;

   4.查看錶的結構

     DESCRIBEuser;

   5.創建新的庫

    CREATEDATABASE  auth;

   6.創建新的表

    CREATE TABLE 表名(字段1名稱類型,字段2 類型,……,PRIMARY KEY (主鍵名));

 

    CREATE TABLE users (user_name CHAR(16) NOT NULL,  user_passwd CHAR(48)  DEFAULT     ‘’, PRIMARY KEY (user_name));  //創建一個users表 “用戶名”爲不超過16個字節的字

    符串,不能爲空,後面密碼段類似。

    7.刪除一個數據表

    DROP TABLE auth.users;

   8.刪除一個數據庫

    DROP TABLE auth

   9.向表中插入數據記錄

    INSERT INTO 表名(字段1,字段2……,) VALUES(字段1的值,….);

    INSERT INTO users(user_name,user_passwd)  VALUES(‘zhangsan’,              PASSWORD(‘123456’));

    10.查詢數據記錄

    SELECT 字段名1,字段名2…….., FROM 表名 WHERE 條件表達式

    Select * from auth.users   //查看auth庫中users表的所有記錄

    SELECT user_name,user_passwd FROM auth.users whereuser_name=’zhangsan’;        //  查詢users表中用戶名爲zhangsan的記錄

   11.修改數據記錄

    UPDATE 表名 SET 字段名1=字段值1[,字段名2=字段值2] WHERE 條件表達式

    UPDATE auth.users SET user_passwd=PASSWORD(‘’) WHEREuser_name=’lisi’;//吧users

    表中lisi的密碼改爲空

   12.刪除數據記錄

    DELETE FROM 表名 WHERE 條件表達式

    DELETE FROM auth.users WHERE user_name=’lisi’        //刪除lisi的記錄

   13.授予權限

    GRANT     權限列表 ON 庫名.表名 TO 用戶名@來源地址 [TDENTIFIED BY ‘密碼’]

      a.權限列表:用於列出授權使用的各種數據庫操作。

     b.庫名.表名:用於指定授權操作的庫和表的名稱。

     c.用戶名@來源地址:用於指定用戶名和允許訪問的客戶機地址

    d TDENTIFIED BY:用於 設置用戶連接數據庫是所使用的密碼字符串。

    GRANT select ONauth.* TO  ‘carey’@’localhost’ TDENTIFIEDBY ‘123456’;

    14.查看權限

    SHOW  GRANTS FOR 用戶名@來源地址

    SHOW GRANTS FOR ‘carey’@‘localhost’;

   15.撤銷權限

    REVOKE  權限列表  ON  數據庫名.表名 FROM 用戶名@來源地址

    REVOKE  all ON auth.*FROM ‘carey’@‘localhost‘;

   16.備份數據庫

    A.導出指定庫中的部分表。

        mysqldump [ 選項] 庫名[表名1]  [表名2].。。。。> /備份路徑/備份文件名

        mysqldump –u root  -pmysql user > mysql-user.sql

    B.mysqldump [ 選項] - –databases [庫名1]  [庫名2].。。。。> /備份路徑/備份文件名

        mysqldump –u root  -p--databases auth >auth.sql

    C.mysqldump [ 選項] --all –databases > /備份路徑/備份文件名

    D.mysqldump –u root –p  --opt –all-databases> all-databases.sql

    17.恢復數據庫

        mysql [選項]  [庫名] [表名] < /備份路徑/備份文件名

        mysql –u root -p  test < mysql-user.sql


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章