centos7 mysql5.7.17源碼安裝
**安裝前準備
操作系統環境:Centos 7.2
1、解決依賴包并下載源碼包至/home/soft/目錄下
[root@node03?~]#?yum?-y?install?gcc?gcc-c++?ncurses?ncurses-devel?cmake?bison
[root@node03?~]#?cd?/home/soft/
[root@node03?soft]#?wget?https://sourceforge.net/projects/boost/files/boost/1.59.0/boost_1_59_0.tar.gz
[root@node03?soft]#tar?-zxvf?boost_1_59_0.tar.gz?#解壓
[root@node03?soft]#mv?boost_1_59_0?/usr/local/boost??#移動至/usr/local/boost/目錄下
[root@node03?soft]#?wget?http://cdn.mysql.com/Downloads/MySQL-5.7/mysql-5.7.17.tar.gz
[root@node03?soft]#?tar?-zxvf?mysql-5.7.17.tar.gz
2、新建MySQL用戶和用戶組,創建/mydata/data目錄存放mysql數據
[root@node03?soft]#?groupadd?-r?mysql?&&?useradd?-r?-g?mysql?-s?/sbin/nologin?-M?mysql
[root@node03?soft]#?mkdir?-pv?/mydata/data
3、預編譯及編譯安裝
[root@node03?soft]#?cd?mysql-5.7.17
[root@node03?mysql-5.7.17]#?cmake?.?-DCMAKE_INSTALL_PREFIX=/usr/local/mysql?\
-DMYSQL_DATADIR=/mydata/data?\
-DDEFAULT_CHARSET=all?\
-DDEFAULT_CHARSET=utf8?\
-DDEFAULT_COLLATION=utf8_general_ci?\
-DWITH_INNOBASE_STORAGE_ENGINE=1?\
-DWITH_MYISAM_STORAGE_ENGINE=1?\
-DMYSQL_USER=mysql?\
-DMYSQL_TCP_PORT=3306?\
-DWITH_BOOST=/usr/local/boost?\
-DENABLED_LOCAL_INFILE=1?\
-DWITH_PARTITION_STORAGE_ENGINE=1?\
-DMYSQL_UNIX_ADDR=/tmp/mysqld.sock?\
-DWITH_EMBEDDED_SERVER=1?\
注:
DCMAKE_INSTALL_PREFIX=/usr/local/mysql:安裝路徑
DMYSQL_DATADIR=/mysql/data:數據文件存放位置
DSYSCONFDIR=/etc:my.cnf路徑
DWITH_MYISAM_STORAGE_ENGINE=1:支持MyIASM引擎
DWITH_INNOBASE_STORAGE_ENGINE=1:支持InnoDB引擎
DMYSQL_UNIX_ADDR=/tmp/mysqld.sock:連接數據庫socket路徑
DMYSQL_TCP_PORT=3306:端口
DENABLED_LOCAL_INFILE=1:允許從本地導入數據
DWITH_PARTITION_STORAGE_ENGINE=1:安裝支持數據庫分區
DEXTRA_CHARSETS=all:安裝所有的字符集
DDEFAULT_CHARSET=utf8:默認字符
DWITH_EMBEDDED_SERVER=1:嵌入式服務器
[root@node03?mysql-5.7.17]#?make?install?#編譯安裝
4、設置啟動腳本,開機自啟動
[root@node03?~]#?cp?/home/soft/mysql-5.7.17/support-files/mysql.server?/etc/init.d/mysqld
[root@node03?~]#?chmod?+x?/etc/init.d/mysqld
[root@node03?~]#?systemctl?enable?mysqld
mysqld.service?is?not?a?native?service,?redirecting?to?/sbin/chkconfig.
Executing?/sbin/chkconfig?mysqld?on
[root@node03?~]#?chown?-R?mysql:mysql?/usr/local/mysql
5、拷貝my.cnf至/etc/目錄下,并初始化數據庫
[root@node03?~]#?cp?/home/soft/mysql-5.7.17/support-files/my-default.cnf?/etc/my.cnf
[root@node03?~]#?/usr/local/mysql/bin/mysqld??--initialize?--user=mysql?--basedir=/usr/local/mysql?--datadir=/mydata/data
注:初始化最后一行是root用戶密碼(root@localhost: ,5j1Qj_LLAek)
6、配置mysql環境變量,并啟動服務
[root@node03?data]#?vim?/etc/profile
#編輯/etc/profile文件在最后添加如下兩行
PATH=/usr/local/mysql/bin:$PATH
export?PATH
[root@node03?data]#?source?/etc/profile??#刷新生效
[root@node03?mysql]#?systemctl?start?mysqld.service
[root@node03?mysql]#?ss?-tlpn?|grep?'3306'
LISTEN?????0??????80??????????:::3306????????????????????:::*???????????????????users:(("mysqld",pid=25268,fd=20))
7、root管理員修改密碼
[root@node03?mysql]#mysql?-uroot?-p,5j1Qj_LLAek
mysql>?SET?PASSWORD?=?PASSWORD('111111');
Query?OK,?0?rows?affected,?1?warning?(0.00?sec)
mysql>?ALTER?USER?'root'@'localhost'?PASSWORD?EXPIRE?NEVER;
Query?OK,?0?rows?affected?(0.00?sec)
mysql>?FLUSH?PRIVILEGES;
Query?OK,?0?rows?affected?(0.00?sec)