Linux下MySQL的安裝和啟動
一、MySQL各類安裝方法的比較
在Linux系統下,MySQL有3種主要的安裝方式,分別是:RPM安裝、二進位安裝、源碼安裝。三種安裝方式的優缺點如下表所示:
|
RPM安裝 |
二進位安裝 |
源碼安裝 |
優點 |
安裝簡單,適合初學者 |
安裝簡單,可以安裝到任何路徑下 |
可以根據使用需要定製編譯,靈活,效能最好 |
缺點 |
需要單獨下載服務端和用戶端,安裝路徑不夠靈活,預設路徑不能修改 |
已經經過編譯,效能不如源碼安裝的好,無法靈活定製編譯參數 |
安裝過程複雜,編譯時間長 |
檔案布局 |
- /usr/bin(用戶端程式和指令碼)
- /usr/sbin(mysqld伺服器)
- /var/lib/mysql(記錄檔和資料庫)
- /usr/include/mysql(標頭檔)
- /usr/lib/mysql(庫檔案)
- /usr/share/mysql(錯誤訊息和字元集檔案)
|
- bin(mysqld伺服器和用戶端程式)
- data(記錄檔和資料庫)
- include(標頭檔)
- lib(庫檔案)
- scripts(mysql_install_db指令碼)
- share/mysql(錯誤訊息)
|
|
二、RPM安裝過程說明
訪問http://dev.mysql.com/downloads/mysql/5.6.html#downloads,選擇下載對應版本和位元的rpm安裝包,如所示:
運行如下命令即可完成安裝。
1 |
rpm -ivh MySQL-devel-5.6.31-1.el6.x86_64.rpm |
三、二進位安裝過程說明
(1)、增加mysql使用者和使用者組
12 |
groupadd mysql useradd -g mysql mysql |
(2)、解壓二進位安裝包,放到指定的目錄下。
(3)、初始化資料庫,建立資料庫的基礎資料表。
1 |
./mysql_install_db --user=mysql |
(4)、根據實際需要,設定相應目錄許可權。
四、源碼安裝過程說明
(1)、下載,解壓源碼包。
(2)、安裝必要的軟體包。
1234 |
1.cmake 2.ncurses-devel yum install cmake ncurses-devel -y |
(3)、建立使用者和組
12 |
groupadd mysql useradd mysql -s /sbin/nologin -M -g mysql |
(4)、編譯參數及安裝
12345678910111213141516171819 |
cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql-5.6.28 \ -DMYSQL_DATADIR=/usr/local/mysql-5.6.28/data \ -DMYSQL_UNIX_ADDR=/usr/local/mysql-5.6.28/tmp/mysql.sock \ -DDEFAULT_CHARSET=utf8 \ -DDEFAULT_COLLATION=uft8_general_ci \ -DEXTRA_CHARSETS=gbk,gb2312,utf8,ascii \ -DENABLED_LOCAL_INFILE=ON \ -DWITH_INNOBASE_STORAGE_ENGINE=1 \ -DWITH_FEDERATED_STORAGE_ENGINE=1 \ -DWITH_BLACKHOLE_STORAGE_ENGINE=1 \ -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 \ -DWITH_FAST_MUTEXES=1 \ -DWITH_ZLIB=bundled \ -DENABLED_LOCAL_INFILE=1 \ -DWITH_READLINE=1 \ -DWITH_EMBEDDED_SERVER=1 \ -DWITH_DEBUG=0 make && make install |
(5)、產生連結目錄
1 |
ln -s /usr/local/mysql-5.6.28 /usr/local/mysql |
(6)、添加環境變數
12 |
echo 'export PATH=/usr/local/mysql/bin:$PATH' >> /etc/profile source /etc/profile |
(7)、修改目錄許可權
1 |
chown -R mysql.mysql /usr/local/mysql-5.6.28 |
(8)、初始化資料庫,產生基礎資料表
12 |
/usr/local/mysql/scripts ./mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql |
(9)、配置MySQL開機檔案
123 |
cd /usr/local/mysql/support-files cp mysql.server /etc/init.d/mysqld chmod +x /etc/init.d/mysqld |
五、MySQL的啟動與關閉
(1)、對於使用RPM安裝的,可以使用系統服務來啟動與關閉MySQL。
12 |
service mysqld start #啟動mysql service mysqld stop #關閉mysql |
(2)、對於二進位和源碼安裝,可以從安裝目錄中找出mysql的開機檔案(參考編譯安裝過程第9步,當然,你也可以自己編寫一個),然後拷貝到/etc/init.d/mysqld,用來來啟動和關閉MySQL,也可以用chkconfig命令將其加入系統服務中。
123 |
/etc/init.d/mysqld start #啟動mysql /etc/init.d/mysqld stop #關閉mysql /etc/init.d/mysqld restart #重啟mysql |
(3)、MySQL啟動基本原理
/etc/init.d/mysqld是一個shell指令碼,在啟動過程中會調用mysqld_safe指令碼,最後調用mysqld服務啟動mysql。如下所示,/etc/init.d/mysqld指令碼中調用mysqld_safe的程式。
1 |
$bindir/mysql_safe --datadir= "$datadir" --pid-file= "$mysqld_pid_file_path" $other_args >/dev/ null 2>&1 & |
(4)、另外我們還可以使用mysqladmin命令關閉MySQL
1 |
mysqladmin -uroot -ppassword shutdown #只有具有mysql的root使用者才能執行關閉操作。 |
(5)、非測試環境不推薦的MySQL關閉方法
123 |
killall mysqld pkill mysqld killall -9 mysqld |
本文永久更新連結地址: