MySQL5.7源碼安裝

五、MySQL源碼安裝(centos7.5)html

5.1 下載軟件
官方自帶(boost版本mysql)
wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-boost-5.7.20.tar.gz
tar xf mysql-boost-5.7.20.tar.gz
mv mysql-boost-5.7.20 mysql
安裝依賴包
yum install -y cmake gcc-c++ ncurses-devel perl-Data-Dumper boost boost-doc boost-develmysql

5.2 建立關鍵目錄c++

mkdir /usr/local/mysql
mkdir /usr/local/mysql/mydata
mkdir /usr/local/mysql/conf
useradd mysql
chown -R mysql:mysql /usr/local/mysql*sql

5.3 cmake進行預編譯:
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/usr/local/mysql/mydata  \
-DSYSCONFDIR=/usr/local/mysql/conf \
-DMYSQL_USER=mysql -DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \
-DMYSQL_TCP_PORT=3306 -DEXTRA_CHARSETS=all \
-DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_DEBUG=0 -DMYSQL_MAINTAINER_MODE=0 \
-DWITH_SSL:STRING=bundled -DWITH_ZLIB:STRING=bundled \
-DWITH_SYSTEMD=1 -DDOWNLOAD_BOOST=1 -DWITH_BOOST=./boost數據庫

++++++++++++++++++++++++++++++++++++++++++++
注意:
-DWITH_SYSTEMD=1        ------>是否支持systemd方式管理MySQL
-DDOWNLOAD_BOOST=1    ------>自動下載boost支持
-DWITH_BOOST=./boost    ------>本地boost目錄vim

Socket: 
爲了簡化本地鏈接MySQL,提供一種封裝形式的TCP/IP協議。
-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock 
++++++++++++++++++++++++++++++++++++++++++++++centos

5.4 編譯安裝:socket

make &&  make installcentos7


5.5 初始化數據(建庫)rest

-----------------------------------
一套完整的數據庫管理系統的基本結構

(1)軟件部分
   存放位置: /usr/local/mysql  

(2)數據部分
   《1》系統相關數據---->維持mysql數據庫軟件程序,正常運行的系統數據
   《2》用戶數據------>和用戶的應用程序有關的
-----------------------------------
(1) 初始化數據,初始化管理員的臨時密碼

/usr/local/mysql/bin/mysqld --initialize  --user=mysql --datadir=/usr/local/mysql/mydata --basedir=/usr/local/mysql

(2)初始化數據,初始化管理員的密碼爲空

/usr/local/mysql/bin/mysqld --initialize-insecure  --user=mysql --datadir=/usr/local/mysql/mydata --basedir=/usr/local/mysql

--------
註釋:5.6初始化的區別
/usr/local/mysql/scripts/mysql_install_db  --user=mysql --datadir=/usr/local/mysql/mydata --basedir=/usr/local/mysql
--------

5.6 啓動數據庫
(1)書寫默認配置文件
vim /etc/my.cnf
[mysqld]
basedir=/usr/local/mysql
datadir=/usr/local/mysql/mydata
socket=/tmp/mysql.sock
log_error=/var/log/mysql.log
user=mysql
[client]
socket=/tmp/mysql.sock
(2)
touch /var/log/mysql.log
chown -R mysql.mysql /var/log/mysql.log

(3)                   
cd  /usr/local/mysql/support-files
vim  mysql.server     
替換全部mysqld_safe  爲 mysqld

(4)

./mysql.server start
netstat -lnp|grep 3306

5.7 原始sys-v管理啓動

cp mysql.server /etc/init.d/mysqld

5.8 使用systemd管理mysql

vim /etc/systemd/system/mysqld.service
[Unit]
Description=MySQL Server
Documentation=man:mysqld(8)
Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html
After=network.target
After=syslog.target

[Install]
WantedBy=multi-user.target
[Service]
User=mysql
Group=mysql
ExecStart=/usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf
LimitNOFILE = 5000

注意:將原來模式啓動mysqld先關閉,而後再用systemd管理。

systemctl  start/stop/restart/status   mysqld  

相關文章
相關標籤/搜索