MySQL的常見的安裝方式,通常是經過RPM包的形式安裝,還有就是經過安裝Linux時,一併把MySQL安裝好,今天和你們介紹一下,若是用源代碼的方式,在非mysql
root用戶安裝MySQL。具體安裝環境以下:linux
操做系統:CentOS 6.2c++
MySQL版本:MySQL 5.6sql
mysql安裝在指定的用戶下,本文是mysql用戶。數據庫
數據庫的安裝目錄: /mysql/server centos
下面開始咱們MYSQL安裝過程 。安全
1、安裝前的準備工做服務器
在安裝MySQL前,先要檢查MySQL依賴是否存在。網絡
一、檢查GCC是否已經安裝。檢查方法: rpm –qa gccsocket
若是沒有安裝,則須要安裝GCC, centos 安裝GCC方式: yum install gcc
二、檢查cmake 是否安裝。檢查方法:rpm –qa cmake
若是未安裝,先安裝cmake , yum install cmake
注: 若是當前沒有centos 安裝盤,或者Linux不能上網,只能上網下載cmake的rpm 包,gcc也是如此。
三、其它依賴包的安裝,除了gcc,cmake 之外,mysql 還會依賴如下包:
bison
gcc-c++
autoconf
automake
zlib*
libxml*
ncurses-devel
libtool-ltdl-devel
能夠用yum install 包名,分別安裝,也能夠一次安裝完,命令格式:
yum install bison,gcc-c++ autoconf zlib* libxml* ncurses-devel libtool-ltdl-devel
四、MySQL官網下載源碼
去官司網www.mysql.com 下載MySQL 源碼。
五、建立用戶和用戶組
通常安裝MySQL前會建立用戶,建立用戶主要是爲了方便管理。
groupadd mysql #建立mysql 用戶組
useradd –g mysql mysql –d /mysql #建立Mysql用戶,並指定所屬的用戶組。並指定mysql用戶的主目錄。
passwd mysql #設置用戶密碼
六、解壓源碼
tar -xzvf mysql-5.6.14.tar.gz
七、編譯前配置
在解壓後的目錄中執行如下命令,配置編譯的基本信息:
[mysql@master mysql-5.6.14]$ cmake CMakeLists.txt \
> -DCMAKE_INSTALL_PREFIX=/mysql/server \
> -DDEFAULT_CHARSET=utf8 \
> -DDEFAULT_COLLATION=utf8_general_ci \
> -DWITH_MYISAM_STORAGE_ENGINE=1 \
> -DWITH_INNOBASE_STORAGE_ENGINE=1 \
> -DWITH_ARCHIVE_STORAGE_ENGINE=1 \
> -DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
> -DWITH_MEMORY_STORAGE_ENGINE=1 \
> -DWITH_READLINE=1 \
> -DENABLED_LOCAL_INFILE=1 \
選項介紹:
CMAKE_INSTALL_PREFIX 指定安裝MySQL的基準目錄,這個必定要指定,不然會安裝到默認的/usr/locale 這個目錄。在平常的工做中
咱們可能沒有root賬號的權限,有時咱們更願意安裝到本身指定的目錄。
DEFAULT_CHARSET 指定字符集 ;
DWITH_MYISAM_STORAGE_ENGINE 指定存儲引擎,設爲1時,表示在編譯時構建該存儲引擎,存儲引擎須要在編譯時指定。
八、正式編譯源代碼:
[mysql@master mysql-5.6.14]$ make
注意:MYSQL源碼較多,估計要20分鐘左右才編譯完成。
九、安裝
[mysql@master mysql-5.6.14]$ make install
若是 gmake install 不加任何參數,安裝時,會安裝到cmake 配置時指定的目錄,如咱們上文的配置目錄/mysql/server 。在此時也能夠指定其它目錄,但
須要指定一個參數 :DESTDIR 。
執行命令以下: make install DESDIR="/home/mysql/bin」
指定了DESDIR參數後,因爲在cmake配置的安裝路徑是/mysql/server, 那麼此時安裝的完整目錄就是:/home/mysql/bin/mysql/server
到些,MySQL應用就基本安裝完成。
十、MySQL服務器配置
安裝好的目錄結構以下圖:
其中有幾個參數須要說明一下:
--user 指定MYSQL的用戶
--basedir 指定MYSQL安裝的基準目錄,本演示的目錄爲/mysql/server
--datadir 指定MYSQL的數據文件目錄
--defaults-file 批定的MYSQL 的my.cnf文件位置,本演示設定爲:/mysql/server/my.cnf
my.cnf 文件位置位於/mysql/server 目錄下。
如上圖,my.cnf基本配置,須要指定幾個配置項:
basedir 即MYSQL的基準目錄。示例: basedir=/mysql/server
datadir 即MYSQL的數據文件存文目錄。 示例:datadir=/mysql/server/data
port 即MYSQL的網絡監聽端口號 。
server_id 若是MYSQL須要設置主從,須要指定一個值。當前咱們不設置主從。
socket MYSQL本地SOCKET 通訊目錄。
log-error 該配置主要爲mysqld_safe腳本使用,指定MYSQL的錯誤日誌。示例: /mysql/server/var/log/mysqld.log 在這須要注意一下,因爲默認的MYSQL目錄沒有var/log 這個子目錄,須要手工建立,在MYSQL的BASE目錄,即/mysql/server ,執行mkdir –p var/log 命令。
pid-file 進程號。/home/server/var/mysqld.pid
mysqld 指定mysqld_safe腳本用到哪一個程序啓動MYSQL
本教程只說明基本幾個參數,在後續教程中咱們會詳細介紹my.cnf的使用。
十一、啓動數據庫
在linux/unix 啓動數據庫建議用mysqld_safe 腳本啓動。
[mysql@master server]$ ./bin/mysqld_safe &
查看MYSQL進程是否存在:
ps –ef | grep mysql
執行結果以下圖:
十二、設置MYSQL數據庫的安全信息
進入/mysql/server 目錄,執行如下命令:
[mysql@master server]$ ./bin/mysql_secure_installation
若是執行結果以下圖所示,這是由於mysql_secure_installtion 腳本有一個bug ,不會讀取my.cnf 的socket的通訊配置。簡單的方案是:
ln –s /mysql/server/var/mysql.sock /tmp/mysql.sock
用上面命令建立一個 link
建立完link 再次就能夠執行,按英文提示便可,主要是設置root密碼,是否容許root遠程訪問。
1三、訪問MYSQL數據庫服務器
[mysql@master server]$ ./bin/mysql -h localhost -P 3307 -u root -p
看到上述畫面,MYSQL肯定安裝完成。
在這裏須要注意一下,若是此處也提示找到/tmp/mysql.sock 錯誤,能夠在my.cnf添加一行配置便可,具體以下:
[mysql]
socket=/mysql/server/var/mysql.sock
port=3306
1四、關閉mysql數據庫
執行該命令便可:
[mysql@master server]$ ./bin/mysqladmin shutdown -p
至此,MYSQL數據庫所有安裝與配置完成,接下來,咱們就能夠進行MYSQL學習之旅。