MySQL編譯安裝環境介紹:

MySQL編譯安裝環境介紹:
系統環境:RedHat6.3_x64
mysql 版本:5.6.19

一、配置好yum源。
    最簡單的方法就是,拷貝鏡像文件裏面的兩個目錄到系統的一個目錄下。
例如我的,我把Packages和repodata拷貝/media/pak下

[root@www pak]# ls
Packages  repodata

修改yum的配置文件,系統默認有一個以repos爲後綴的文件,你可以rm 掉,也可以mv 改名。或者繼續使用默認的名稱,都可以。
但是有一點,就是保證yum.repos.d目錄下只有一個以repos後綴結尾的文件。

[root@www pak]# cat /etc/yum.repos.d/yum.repos
[rhel-source]
name=Red Hat Enterprise Linux $releasever - $basearch - Source
baseurl=file:///media/pak
enabled=1
gpgcheck=0

解釋:
baseurl(基礎路徑)=file:///media/pak
enabled=1 (是否開yum庫)
gpgcheck=0   不檢測 K檢測

    二、安裝依賴包。
1、配置好了yum源,安裝yum工具。
    yum list;
2、安裝依賴包:
    yum install -y gcc gcc-c++ gcc-g77 autoconf automake zlib* fiex* libxml* ncurses-devel libmcrypt* libtool-ltdl-devel*


   三、添加用戶&組。
groupadd mysql
useradd -r -g mysql mysql


   四、安裝MySQL。
1、安裝cmake工具。
       在安裝MySQL前先要確定Linux系統是否已經安裝了cmake工具。據我瞭解的,大部分的沒有,尤其是6.0以後的各種Linux系統。
這幾簡單的介紹如何安裝cmake工具。
a、先下載好cmake ,建議選擇新版本。很多人在選擇下載包的時候,不知道選擇新版本還是舊版本。我建議選擇新版本,至少功能齊全,兼容性更好。
b、解壓cmake包
c、cd進入解壓後的cmake目錄。
d、執行./configure   -----cmake只是一個工具,這裏不加參數,即:安裝到系統默認的位置,你也不用考過他會安裝到哪裏。
e、make && make install   ---幾分鐘就安裝好了

2、安裝MySQL
    a、解壓MySQL安裝包
[root@www soft]# tar -zxvf mysql-5.6.19.tar.gn
[root@www mysql-5.6.19]#cmake \
-DCMAKE_INSTALL_PREFIX=/u01/mysql \
-DMYSQL_DATADIR=/u01/mysql/data \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DEXTRA_CHARSETS=all \
-DENABLED_LOCAL_INFILE=1
    參數說明:
    -DCMAKE_INSTALL_PREFIX=/usr/local/mysql        -----   安裝目錄  這是MySQL的默認安裝位置,而我選擇的是/u01/mysql ,我覺得這樣管理方便,清晰
    -DINSTALL_DATADIR=/usr/local/mysql/data         -----   數據庫存放目錄
    -DDEFAULT_CHARSET=utf8                      -----   使用utf8字符
    -DDEFAULT_COLLATION=utf8_general_ci           -----    校驗字符
    -DEXTRA_CHARSETS=all                           -----    安裝所有擴展字符集
    -DENABLED_LOCAL_INFILE=1                        -----    允許從本地導入數據

[root@www mysql-5.6.19]# make                       -----    這個階段,時間比較長
[root@www mysql-5.6.19]# make install  

五、MySQL初始配置

 (1)設置目錄權限

    [root@www~]# cd /u01/mysql
    [root@www mysql]# chown -R root:mysql .                              ----   把當前目錄中所有文件的所有者所有者設爲root,所屬組爲mysql
    [root@www mysql]# chown -R mysql:mysql data

 (2)設置MySQL服務:

    [root@www mysql]# cp support-files/my-medium.cnf /etc/my.cnf ----   將mysql的啓動服務添加到系統服務中

 (3)創建系統數據庫的表:
    [root@www mysql]# cd /u01/mysql
    [root@www mysql]# scripts/mysql_install_db --user=mysql --basedir=/u01/mysql --datadir=/u01/mysql/data -----   這個是必須的,這是初始化數據庫,否則會提示很多警告和錯誤

 (4)設置環境變量:

    [root@www~]# vi /root/.bash_profile                         -----    在PATH=$PATH:$HOME/bin添加參數爲:

    PATH=$PATH:$HOME/bin:/u01/mysql/bin:/u01/mysql/lib
    [root@www~]#source /root/.bash_profile                   -----   使用環境變量生效

 (5)手動啓動mysql:

    [root@www~]# cd /u01/mysql
    [root@www mysql]# ./bin/mysqld_safe --user=mysql     -----    啓動MySQL,但不能停止
    啓動日誌寫在此文件下:/u01/mysql/data/www.err (這裏記錄了mysql所有啓動時提示的各種信息,包括錯誤信息)

    關閉MySQL服務
    [root@www mysql]# mysqladmin -u root -p shutdown  -----  這裏MySQL的root用戶還沒有配置密碼,所以爲空值需要輸入密碼時,直接點回車鍵即可。

 (6)另一種簡單的啓動mysql的方法(mysql已經被添加到系統服務中):

    [root@www~]# service mysql.server start
    [root@www~]# service mysql.server stop
    [root@www~]# service mysql.server restart

    如果上述命令出現:mysql.server 未識別的服務
    則可能mysql還沒添加到系統服務中,下面用另一種方法添加:
    [root@www mysql]# cp support-files/mysql.server /etc/init.d/mysql ------   將mysql的啓動服務添加到系統服務中

    注意:主要是將mysql.server拷貝到/etc/init.d中,命名爲mysql。在有的系統中,mysql.server在/u01/mysql/share/mysql/mysql.server中,而本系統中,mysql.server在/u01/mysql/support-files/mysql.server中。

    然後再用#service mysql start 來啓動mysql即可。
 或者
    [root@www mysql]# /etc/init.d/mysql start
    [root@www mysql]# /etc/init.d/mysql stop
    [root@www mysql]# /etc/init.d/mysql restart

 (7)修改MySQL的root用戶的密碼以及打開遠程連接:

    [root@www~]# mysql -u root mysql
    mysql> use mysql;
    mysql> desc user;
    mysql> GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY "xxxxxx";  -----  爲root添加遠程連接的能力。
    mysql> update user set Password = password('xxxxxx') where User='root';
    mysql> select Host,User,Password from user where User='root';
    mysql> flush privileges;
    mysql> exit

    重新登錄:mysql -u root -p
    若還不能進行遠程連接,則關閉防火牆
    [root@www~]# /etc/rc.d/init.d/iptables stop

現在可以登錄上,建表等等。

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