一、依賴包安裝
代碼如下 復制代碼yum -y install gcc gcc-c++ autoconf automake zlib* fiex* libxml* ncurses-devel libmcrypt* libtool-ltdl-devel* cmake cmake-gui libaio-devel bison-devel make
二、下載及安裝Mysql
代碼如下 復制代碼wget http://cdn.mysql.com/Downloads/MySQL-5.6/mysql-5.6.17.tar.gz
1、編譯安裝,編譯的參數可以參考
http://dev.mysql.com/doc/refman/5.5/en/source-configuration-options.html
cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql5617 \
-DMYSQL_DATADIR=/usr/local/mysql5617/data \
-DSYSCONFDIR=/etc \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock \
-DMYSQL_TCP_PORT=3306 \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DEXTRA_CHARSETS=all \ -DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci
make && make install
三、配置Mysql
1、創建mysql用戶及用戶組
代碼如下 復制代碼groupadd mysql
useradd -g mysql mysql
2、修改/usr/local/mysql權限
代碼如下 復制代碼chown -R mysql:mysql /usr/local/mysql
3、初始化配置
代碼如下 復制代碼cd /usr/local/mysql
進入安裝路徑,執行初始化配置腳本,創建系統自帶的數據庫和表
scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql
注:在啟動MySQL服務時,會按照一定次序搜索my.cnf,先在/etc目錄下找,找不到則會搜索"$basedir/my.cnf",在本例中就是 /usr/local/mysql/my.cnf,這是新版MySQL的配置文件的默認位置!注意:在CentOS 6.4版操作系統的最小安裝完成後,在/etc目錄下會存在一個my.cnf,需要將此文件更名為其他的名字,如:/etc/my.cnf.bak,否則,該文件會干擾源碼安裝的MySQL的正確配置,造成無法啟動。
四、啟動MySQL
1、添加服務,拷貝服務腳本到init.d目錄,並設置開機啟動
代碼如下 復制代碼cp support-files/mysql.server /etc/init.d/mysql chkconfig mysql on service mysql start --啟動MySQL
2、配置用戶
MySQL啟動成功後,root默認沒有密碼,我們需要設置root密碼。
設置之前,我們需要先設置PATH,要不不能直接調用mysql
3、添加環境變量,修改/etc/profile文件,在文件末尾添加
PATH=/usr/local/mysql/bin:$PATH export PATH
4、關閉文件,運行下面的命令,讓配置立即生效
source /etc/profile
5、登錄mysql終端,執行下面的命令修改root密碼
mysql -uroot mysql> SET PASSWORD = PASSWORD('123456');
6、若要設置root用戶可以遠程訪問,執行
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'172.16.%' IDENTIFIED BY 'password' WITH GRANT OPTION;
紅色的password為遠程訪問時,root用戶的密碼,可以和本地不同。
五、配置防火牆
防火牆的3306端口默認沒有開啟,若要遠程訪問,需要開啟這個端口
打開/etc/sysconfig/iptables
在“-A INPUT –m state --state NEW –m tcp –p –dport 22 –j ACCEPT”,下添加:
-A INPUT m state --state NEW m tcp p dport 3306 j ACCEPT 然後保存,並關閉該文件,在終端內運行下面的命令,刷新防火牆配置:
service iptables restart
六、安裝過程出現錯誤處理
[100%] Building CXX object mysql-test/lib/My/SafeProcess/CMakeFiles/my_safe_process.dir/safe_process.cc.o Linking CXX executable my_safe_process [100%] Built target my_safe_process CMake Error at info_macros.cmake:90 (FILE): file Internal CMake error when trying to open file: /usr/local/src/mysql-5.6.17/Docs/INFO_BIN for writing. Call Stack (most recent call first): cmake/info_bin.cmake:29 (CREATE_INFO_BIN)
make[2]: *** [CMakeFiles/INFO_BIN] Error 1 make[1]: *** [CMakeFiles/INFO_BIN.dir/all] Error 2 make: *** [all] Error 2
安裝依賴包,再重新編譯
yum -y install gcc gcc-c++ autoconf automake zlib* fiex* libxml* ncurses-devel libmcrypt* libtool-ltdl-devel* cmake cmake-gui libaio-devel bison-devel make
補充資料
a.修改密碼:
./bin/mysqladmin -u root password 'new-password'
或者用
./bin/mysqladmin -u root -h PE password 'new-password'
b.按照提示一步一步安裝的命令:
./bin/mysql_secure_installation
拷貝my-midle.cnf至/etc/my.cnf
vi my.cnf;修改 basedir 和 datadir 和
character_set_server=utf8,如果沒有,則添加這三項,
character_set_server是mysql5.5以後版本設置mysqld服務器字符集的。
這三項都在mysqld 設置項裡。
登錄進去後,設置密碼和訪問:
grant all on mysql.* to ‘root’@'localhost’ identified by ‘password’;