標籤:二進位免編譯安裝MySQL
一、三種安裝方式的區別
源碼安裝
自己下載源碼壓縮包,執行config、make、make install完成編譯安裝,裡邊的目錄參數完全自己定製,這些操作完成後需要修改資料庫設定檔,修改許可權,然後完成初始化安裝;
二進位免編譯安裝
與源碼安裝的區別是已經完成了config、make的操作,把二進位安裝包解壓就相當於源碼安裝的make install步驟,之後的步驟就和源碼安裝一樣,只不過那些目錄參數的配置要按照預設的/etc/local/mysql/來處理;
rpm/yum安裝
這種安裝方法中已經把MySQL的二進位安裝包,資料庫設定檔的修改,初始化安裝已經整合到rpm包中,我們只要做的是安裝rpm包,那些一系列的操作會自動幫我們完成,安裝成功後,就可以直接開啟資料庫服務然後使用了。
二、二進位安裝MySQL
你會發現我安裝的怎麼是mariadb啊,自從開源MySQL被Oracle公司收購後,MySQL的創始人又重新開發了一款開來源資料庫mariadb,其實mariadb和MySQL的操作完全一樣,CentOS7裡邊預設的資料庫是mariadb,但是系統裡邊開啟資料的命令、設定檔參數還是MySQL,因此我就用MySQL泛指了。
① 下載二進位安裝包,我這的伺服器的地址為ftp://172.18.0.1/pub/Sources/m28/mariadb-10.2.14-linux-x86_64.tar.gz,
[[email protected] ~]# cd /usr/local/src/[[email protected] src]# pwd/usr/local/src[[email protected] src]# wget -q ftp://172.18.0.1/pub/Sources/m28/mariadb-10.2.14-linux-x86_64.tar.gz
將二進位安裝包下載至/usr/local/src/目錄下,-q採用靜默方式下載
② 解壓二進位安裝包至/usr/local/目錄下
[[email protected] src]# tar -zxv -f mariadb-10.2.14-linux-x86_64.tar.gz -C /usr/local/
之後會在/usr/local/目錄下產生mariadb-10.2.14-linux-x86_64目錄
③ 將產生的目錄改名為mysql,之所以這樣改是因為設定檔中指定的目錄為/usr/local/mysql,二進位安裝就是這樣,我們必須安裝當初編譯的時候指定的目錄。更改目錄名只是一種辦法,當然還可以建立軟連結 ln -s mariadb-10.2.14-linux-x86_64 mysql.
[[email protected] src]# cd /usr/local[[email protected] local]# mv mariadb-10.2.14-linux-x86_64 mysql
④ 建立使用者mysql、組mysql
[[email protected] ~]# groupadd mysql[[email protected] ~]# useradd -g mysql mysql[[email protected] ~]# id mysqluid=1002(mysql) gid=1002(mysql) groups=1002(mysql)
⑤ 修改/usr/local/mysql/目錄下所有檔案的許可權
[[email protected] ^]# cd /usr/local/[[email protected] local]# chmod -R mysql.mysql mysql/
⑥ 修改資料庫設定檔,我這裡是把提供的模板拷貝到/etc/my.cnf中的,然後執行資料庫初始化指令碼,完場資料庫的初始化安裝。
[[email protected] ~]# cd /usr/local/mysql/support-files[[email protected] support-files]# cp my-large.cnf /etc/my.cnf[[email protected] ~]# /usr/local/mysql/scripts/mysql_install_db --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/ --user=mysql
⑦ 啟動mysqld服務,軟體提供了執行檔案用來啟動服務。
[[email protected] ~]# /usr/local/mysql/bin/mysqld_safe &
因為該命令會一直佔用終端,因此使用&將進程切換至後台
⑧ 如果每次這樣啟動mysqld服務的話,會一直佔用終端,因此我們可以把mysqld改為服務啟動模式,即可以使用service xxx start的方式啟動
[[email protected] ~]# cp /usr/local/mysql/support-files/mysql.server /etc/rc.d/init.d/mysqld
⑨ 進行到這一步,資料庫就可以正常使用了,但是root沒有設定密碼,匿名使用者可以登入,為了安全考慮,可以執行如下命令
[[email protected] ~]# /usr/local/mysql/bin/mysql_secure_installation
執行資料庫安全設定
二進位安裝MySQL