Linux下MySQL的安裝和啟動(轉載)
阿新 • • 發佈:2017-10-15
enable linu char cal mysql用戶 客戶端程序 ast 初學 unix
原文鏈接:http://www.linuxidc.com/Linux/2016-07/133234.htm
一、MySQL各類安裝方法的比較
在Linux系統下,MySQL有3種主要的安裝方式,分別是:RPM安裝、二進制安裝、源碼安裝。三種安裝方式的優缺點如下表所示:
RPM安裝 | 二進制安裝 | 源碼安裝 | |
優點 | 安裝簡單,適合初學者 | 安裝簡單,可以安裝到任何路徑下 | 可以根據使用需要定制編譯,靈活,性能最好 |
缺點 | 需要單獨下載服務端和客戶端,安裝路徑不夠靈活,默認路徑不能修改 | 已經經過編譯,性能不如源碼安裝的好,無法靈活定制編譯參數 | 安裝過程復雜,編譯時間長 |
文件布局 |
|
|
二、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用戶和用戶組
1 2 |
groupadd mysql
useradd -g mysql mysql
|
(2)、解壓二進制安裝包,放到指定的目錄下。
(3)、初始化數據庫,創建數據庫的基礎表。
1 |
./mysql_install_db --user=mysql
|
(4)、根據實際需要,設置相應目錄權限。
四、源碼安裝過程說明
(1)、下載,解壓源碼包。
(2)、安裝必要的軟件包。
1 2 3 4 |
1.cmake
2.ncurses-devel
yum install cmake ncurses-devel -y
|
(3)、創建用戶和組
1 2 |
groupadd mysql
useradd mysql -s /sbin/nologin -M -g mysql
|
(4)、編譯參數及安裝
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
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)、添加環境變量
1 2 |
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)、初始化數據庫,生成基礎表
1 2 |
/usr/local/mysql/scripts
./mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql
|
(9)、配置MySQL啟動文件
1 2 3 |
cd /usr/local/mysql/support-files
cp mysql.server /etc/init.d/mysqld
chmod +x /etc/init.d/mysqld
|
五、MySQL的啟動與關閉
(1)、對於使用RPM安裝的,可以使用系統服務來啟動與關閉MySQL。
1 2 |
service mysqld start #啟動mysql
service mysqld stop #關閉mysql
|
(2)、對於二進制和源碼安裝,可以從安裝目錄中找出mysql的啟動文件(參考編譯安裝過程第9步,當然,你也可以自己編寫一個),然後拷貝到/etc/init.d/mysqld,用來來啟動和關閉MySQL,也可以用chkconfig命令將其加入系統服務中。
1 2 3 |
/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關閉方法
1 2 3 |
killall mysqld
pkill mysqld
killall -9 mysqld
|
Linux下MySQL的安裝和啟動(轉載)