一、獲取MySQL5.7.20源碼安裝包,並上傳至服務器
MySQL官網下載地址:https://dev.mysql.com/downloads/mysql/
下載版本:mysql-boost-5.7.20.tar.gz此版本帶有boost。
二、安裝依賴包
[root@xjfw3 ~]# yum -y install gcc gcc-c++ ncurses ncurses-devel cmake
三、操作系統環境和目錄結構
-
[root@xjfw3 ~]# cat /etc/redhat-release
-
Red Hat Enterprise Linux Server release 6.3 (Santiago)
-
[root@xjfw3 ~]# df -h
-
Filesystem Size Used Avail Use% Mounted on
-
/dev/mapper/vg_local-lv_root
-
20G 5.1G 14G 28% /
-
tmpfs 16G 76K 16G 1% /dev/shm
-
/dev/mapper/vg_local-lv_app
-
40G 176M 38G 1% /app
-
/dev/sda1 485M 55M 405M 12% /boot
-
/dev/mapper/vg_local-lv_home
-
4.0G 137M 3.7G 4% /home
-
/dev/sdb1 394G 2.8G 371G 1% /weblogic
四、添加mysql禁止登錄的用戶及目錄規劃
-
[root@xjfw3 ~]# groupadd mysql
-
[root@xjfw3 ~]# useradd -r -g mysql -s /sbin/nologin mysql
-
MySQL數據庫目錄劃分:
-
mysql軟件目錄: /weblogic/mysql/mysql
-
mysql數據目錄:/weblogic/mysql/datadir
-
mysql日誌目錄:/weblogic/mysql/logdir
-
[root@xjfw3 ~]# mkdir -p /weblogic/mysql/mysql
-
[root@xjfw3 ~]# mkdir -p /weblogic/mysql/datadir
-
[root@xjfw3 ~]# mkdir -p /weblogic/mysql/logdi
-
[root@xjfw3 ~]# cd /weblogic/
-
[root@xjfw3 weblogic]# chown -R mysql.mysql mysql/
五、解壓MySQL並編譯安裝
-
1、解壓Mysql
-
[root@xjfw3 ~]# cd /root
-
[root@xjfw3 ~]# ls mysql-boost-5.7.20.tar.gz
-
mysql-boost-5.7.20.tar.gz
-
[root@xjfw3 ~]# tar -xvf mysql-boost-5.7.20.tar.gz
-
2、編譯安裝
-
[root@xjfw3 ~]#
-
[root@xjfw3 ~]# cd /root/mysql-5.7.20/
-
[root@xjfw3 mysql-5.7.20]# cmake . \
-
> -DCMAKE_INSTALL_PREFIX=/weblogic/mysql/mysql \
-
> -DMYSQL_DATADIR=/weblogic/mysql/datadir \
-
> -DDOWNLOAD_BOOST=1 \
-
> -DWITH_BOOST=/root/mysql-5.7.20/boost \
-
> -DSYSCONFDIR=/etc \
-
> -DWITH_INNOBASE_STORAGE_ENGINE=1 \
-
> -DWITH_PARTITION_STORAGE_ENGINE=1 \
-
> -DWITH_FEDERATED_STORAGE_ENGINE=1 \
-
> -DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-
> -DWITH_MYISAM_STORAGE_ENGINE=1 \
-
> -DENABLED_LOCAL_INFILE=1 \
-
> -DENABLE_DTRACE=0 \
-
> -DDEFAULT_CHARSET=utf8 \
-
> -DDEFAULT_COLLATION=utf8_general_ci \
-
> -DWITH_EMBEDDED_SERVER=1
-
[root@xjfw3 mysql-5.7.20]# make & make install
-
(此過程時間比較長)
六、配置my.cnf文件
-
[root@xjfw3 mysql]# vi /etc/my.cnf
-
[client]
-
port=3306
-
socket=/weblogic/mysql/datadir/mysql.sock
-
default-character-set=utf8
-
[mysqld]
-
port=3306
-
user=mysql
-
socket=/weblogic/mysql/datadir/mysql.sock
-
pid-file=/weblogic/mysql/datadir/mysql.pid
-
basedir=/weblogic/mysql/mysql
-
datadir=/weblogic/mysql/datadir
-
tmpdir=/weblogic/mysql/tmpdir
-
character-set-server=utf8
-
log_error=/weblogic/mysql/logdir/mysql.err
-
server-id=2
-
log_bin=/weblogic/mysql/logdir/binlog
-
general_log_file=/weblogic/mysql/logdir/general_log
-
general_log=1
-
slow_query_log=ON
-
long_query_time=2
-
slow_query_log_file=/weblogic/mysql/logdir/query_log
-
log_queries_not_using_indexes=ON
-
"/etc/my.cnf" [New] 25L, 605C written
-
[root@xjfw3 mysql]#
七、初始化數據庫
-
[root@xjfw3 datadir]# cd /weblogic/mysql/mysql/bin
-
[root@xjfw3 bin]# ./mysqld --initialize-insecure --user=mysql --basedir=/weblogic/mysql/mysql --datadir=/weblogic/mysql/datadir/data
八、安裝ssl,可指定文件生成路徑,默認爲DATA裏面
-
[root@xjfw3 datadir]# cd /weblogic/mysql/mysql/bin
-
[root@xjfw3 bin]# ./mysql_ssl_rsa_setup
-
Generating a 2048 bit RSA private key
-
....................................+++
-
.....................................................................................+++
-
writing new private key to 'ca-key.pem'
-
-----
-
Generating a 2048 bit RSA private key
-
....................................................................................................................+++
-
..................................................................................................+++
-
writing new private key to 'server-key.pem'
-
-----
-
Generating a 2048 bit RSA private key
-
..................................+++
-
........+++
-
writing new private key to 'client-key.pem'
-
-----
-
[root@gsxjfw3 bin]#
九、啓動數據庫
-
[root@xjfw3 ~]# cp /weblogic/mysql/mysql/support-files/mysql.server /etc/init.d/msyqld
-
[root@xjfw3 support-files]# /etc/init.d/mysqld start
-
Starting MySQL.[ OK ]
-
[root@xjfw3 ~]# ps -ef | grep mysql
-
root 14979 1 0 19:57 pts/2 00:00:00 /bin/sh /weblogic/mysql/mysql/bin/mysqld_safe --datadir=/weblogic/mysql/datadir/data --pid-file=/weblogic/mysql/datadir/mysql.pid
-
mysql 15278 14979 0 19:57 pts/2 00:00:00 /weblogic/mysql/mysql/bin/mysqld --basedir=/weblogic/mysql/mysql --datadir=/weblogic/mysql/datadir/data --plugin-dir=/weblogic/mysql/mysql/lib/plugin --user=mysql --log-error=/weblogic/mysql/logdir/mysql.err --pid-file=/weblogic/mysql/datadir/mysql.pid --socket=/weblogic/mysql/datadir/mysql.sock --port=3306
-
root 15397 14855 0 20:04 pts/2 00:00:00 grep mysql
-
[root@xjfw3 ~]#
十、登錄數據庫並修改密碼
-
[root@xjfw3 ~]# /weblogic/mysql/mysql/bin/mysql
-
Welcome to the MySQL monitor. Commands end with ; or \g.
-
Your MySQL connection id is 4
-
Server version: 5.7.20-log Source distribution
-
Copyright (c) 2000, 2017, Oracle and/or its affiliates. All rights reserved.
-
Oracle is a registered trademark of Oracle Corporation and/or its
-
affiliates. Other names may be trademarks of their respective
-
owners.
-
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
-
mysql> alter user 'root'@'localhost' identified by 'mysql';
-
Query OK, 0 rows affected (0.00 sec)
-
mysql>
十一、修改環境變量
-
[root@xjfw3 ~]# vi /etc/profile
-
PATH=/weblogic/mysql/mysql/bin:/weblogic/mysql/mysql/lib:$PATH
-
export PATH
-
"/etc/profile" 80L, 1868C written
-
[root@xjfw3 ~]# source /etc/profile
-
[root@xjfw3 ~]#
至此Mysql安裝完畢,源碼安裝過於繁瑣。建議使用官方編譯好的二進制文件安裝