編譯安裝mysql8.0.18作為測試。順便記錄下安裝過程。
GCC版本
mysql8.0要求gcc版本要5.5以上,CentOS7默認的gcc版本為4.8.5,CentOS8默認gcc版本為8.1.0。為了方便,本次選用CentOS8.0安裝mysql8.0。
下載mysql8.0
為了方便,直接下載boost版本
wget https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-boost-8.0.18.tar.gz #大小為185MB左右
安裝配套軟件
yum install -y gcc gcc-c++ cmake openssl openssl-devel ncurses ncurses-devel libaio-devel
關於缺少rpcgen問題的解決
1)下載rpc.tar.gz至/usr/include解壓
2)下載rpcsvc-proto-1.4.tar.gz執行以下操作
tar -xzvf rpcsvc-proto-1.4.tar.gz &&cd rpcsvc-proto-1.4 && ./configure && make && make install
編譯安裝
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/data/mysql/ -DWITH_BOOST=boost -DFORCE_INSOURCE_BUILD=ON
#安裝路徑為/usr/local/mysql 數據文件目錄/data/mysql/
make && make install (make過程長達一小時左右)
增加配置文件
cat /etc/my.cnf
[mysqld]
server-id=1
port=3306
basedir=/usr/local/mysql
datadir=/data/mysql
#有其他需要可以另行添加
權限修改
chown -R mysql:mysql /usr/local/mysql
chown -R mysql:mysql /data/mysql
chmod -R 755 /usr/local/mysql
chmod -R 755 /data/mysql
mysql初始化
/usr/local/mysql/bin/mysqld --initialize --user=mysql --datadir=/data/mysql/
{% note warning %}
此步驟執行完會產生一個臨時的密碼用於登錄mysql,請保存此密碼。
{% endnote %}
啟動並登錄mysql
/usr/local/mysql/bin/mysqld_safe --user=mysql &
/usr/local/mysql/bin/mysql -u root -p"初始密碼";
修改密碼
登錄進mysql后執行show databases會提示修改密碼。為了安全考慮。mysql5.7初始化完成會允許空密碼登錄,而mysql8.0會生成默認的密碼進行登錄
在mysql下執行
alter user 'root'@'localhost' identified by "你要改的密碼";
添加到啟動
cp support-files/mysql.server /etc/init.d/
可用選項:
service mysql.server start
service mysql.server stop
service mysql.server restart
service mysql.server reload #重載配置文件
service mysql.server status
