一、安裝mysql
安裝方式分為:rpm和源碼編譯安裝兩種,本文采用mysql源碼編譯方式,編譯器使用Cmake。軟件需要mysql-5.5.29.tar.gz和cmake-2.8.10.2.tar.gz,請自行下載。
下載地址:
http://mysql.mirror.kangaroot.net/Downloads/
http://www.cmake.org/files/v2.8/cmake-2.8.10.2.tar.gz
其中mysql使用最新的穩(wěn)定版本,即最新試用版的上一個版本,且非rc或者alpha的版本,Cmake直接用的最新版。
1.上傳mysql-5.5.29.tar.gz和cmake-2.8.10.2.tar.gz到/usr/local文件夾下。
2.CentOS安裝g++和ncurses-devel
[root@zck local]# yum install gcc-c++
[root@zck local]# yum install ncurses-devel
3.cmake的安裝
[root@zck]# tar -zxv -f cmake-2.8.10.2.tar.gz // 解壓壓縮包
[root@zck local]# cd cmake-2.8.10.2
[root@zck cmake-2.8.10.2]# ./configure
[root@zck cmake-2.8.10.2]# make
[root@zck cmake-2.8.10.2]# make install
4.將cmake永久加入系統(tǒng)環(huán)境變量
用vi在文件/etc/profile文件中增加變量,使其永久有效,
[root@zck local]# vi /etc/profile
在文件末尾追加以下兩行代碼:
PATH=/usr/local/cmake-2.8.10.2/bin:$PATH
export PATH
執(zhí)行以下代碼使剛才的修改生效:
[root@zck local]# source /etc/profile
用 export 命令查看PATH值
[root@zck local]# echo $PATH
5.創(chuàng)建mysql的安裝目錄及數(shù)據(jù)庫存放目錄
[root@zck]# mkdir -p /usr/local/mysql //安裝mysql
[root@zck]# mkdir -p /usr/local/mysql/data //存放數(shù)據(jù)庫
6.創(chuàng)建mysql用戶及用戶組
[root@zck] groupadd mysql
[root@zck] useradd -r -g mysql mysql
7.編譯安裝mysql
[root@zck local]# tar -zxv -f mysql-5.5.29.tar.gz //解壓
[root@zck local]# cd mysql-5.5.29
[root@zck mysql-5.5.29]#
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DENABLED_LOCAL_INFILE=1 \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DMYSQL_USER=mysql \
-DMYSQL_TCP_PORT=3306
[root@zck mysql-5.5.29]# make
[root@zck mysql-5.5.29]# make install
8.檢驗是否安裝成功
[root@zck mysql-5.5.29]# cd /usr/local/mysql/
[root@zck mysql]# ls
bin COPYING data docs include INSTALL-BINARY lib man mysql-test README scripts share sql-bench support-files
有bin等以上文件的話,則說明成功安裝mysql。
二、配置mysql
9.設(shè)置mysql目錄權(quán)限
[root@zck mysql]# cd /usr/local/mysql //把當(dāng)前目錄中所有文件的所有者設(shè)為root,所屬組為mysql
[root@zck mysql]# chown -R root:mysql .
[root@zck mysql]# chown -R mysql:mysql data
10.將mysql的啟動服務(wù)添加到系統(tǒng)服務(wù)中
[root@zck mysql]# cp support-files/my-medium.cnf /etc/my.cnf
cp:是否覆蓋"/etc/my.cnf"? y
11.創(chuàng)建系統(tǒng)數(shù)據(jù)庫的表
[root@zck mysql]# cd /usr/local/mysql
[root@zck mysql]# scripts/mysql_install_db --user=mysql
12.設(shè)置環(huán)境變量
[root@zck ~]# vi /root/.bash_profile
在修改PATH=$PATH:$HOME/bin為:
PATH=$PATH:$HOME/bin:/usr/local/mysql/bin:/usr/local/mysql/lib
[root@zck ~]# source /root/.bash_profile //使剛才的修改生效
13.手動啟動mysql
[root@zck ~]# cd /usr/local/mysql
[root@zck mysql]# ./bin/mysqld_safe --user=mysql //啟動MySQL,但不能停止
mysqladmin -u root -p shutdown //此時root還沒密碼,所以為空值,提示輸入密碼時,直接回車即可。
14.將mysql的啟動服務(wù)添加到系統(tǒng)服務(wù)中
[root@zck mysql]# cp support-files/mysql.server /etc/init.d/mysql
15.啟動mysql
[root@zck mysql]# service mysql start
Starting MySQL... ERROR! The server quit without updating PID file (/usr/local/mysql/data/localhost.localdomain.pid).
啟動失?。?br />我這里是權(quán)限問題,先改變權(quán)限
[root@zck mysql]# chown -R mysql:mysql /usr/local/mysql
接著啟動服務(wù)器
[root@zck mysql]# /etc/init.d/mysql start
16.修改MySQL的root用戶的密碼以及打開遠(yuǎn)程連接
[root@zck mysql]# mysql -u root mysql
mysql> use mysql;
mysql> desc user;
mysql> GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY "root"; //為root添加遠(yuǎn)程連接的能力
mysql> update user set Password = password('123456') where User='root'; //設(shè)置root用戶密碼
mysql> select Host,User,Password from user where User='root';
mysql> flush privileges;
mysql> exit
17.重新登錄
[root@zck mysql]# mysql -u root -p
Enter password:123456
若還不能進(jìn)行遠(yuǎn)程連接,關(guān)閉防火墻
[root@zck]# /etc/rc.d/init.d/iptables stop