一、MySQL二進位制安裝包安裝
1、環境初始化
1)建立目錄
mkdir /app/database --安裝路徑 mkdir /data/3306 --存放資料路徑 mkdir /binlog/3306 --存放日誌路徑 將安裝包上傳至/app/database解壓,為方便使用可製作一個軟連線。 ln -s 檔名 mysql
2)清理安裝環境
rpm -qa|grep mariadb
yum remove filename
3)修改環境變數
vim /etc/profile
export PATH=/app/database/mysql/bin:$PATH
[root@db01 bin]# source /etc/profile
2、建立使用者及使用者組
1)建立使用者及使用者組
useradd mysql -s /sbin/nologin 2)修改檔案屬主 chown -R mysql.mysql /app/ chown -R mysql.mysql /data/ chown -R mysql.mysql /binlog
3、初始化系統庫表
yum install -y libaio-devel
mysqld --initialize-insecure --user=mysql --basedir=/app/database/mysql --datadir=/data/3306
4、
cat > /etc/my.cnf <<EOF [mysqld] user=mysql basedir=/app/database/mysql datadir=/data/3306 server_id=6 port=3306 socket=/tmp/mysql.sock [mysql] socket=/tmp/mysql.sock EOF
5、準備啟動指令碼
cd ~/support-files/ cp mysql.server /etc/init.d/mysqld --方便啟動 chkconfig -add mysqld --systemctl
6、啟動與關閉
1)啟動:/app/database/mysql/bin/mysqld 二進位制檔案 /app/database/mysql/bin/mysqld_safe sh指令碼 /support-files/mysql.server sh指令碼 ---> service/systemctl 由下往上呼叫 2)關閉:service mysqld stop systemctl stop mysqld /etc/init.d/mysql stop
7、
1)使用locate my.cnf命令可以列出所有的my.cnf檔案 locate my.cnf 2)檢視是否使用了指定目錄的my.cnf ps aux|grep mysql|grep 'my.cnf' 3)檢視mysql預設讀取my.cnf的目錄的順序 mysql --help|grep 'my.cnf' 注:如果沒有設定使用指定目錄my.cnf檔案及預設讀取目錄沒有my.cnf檔案,表示mysql啟動時並沒有載入配置檔案,而是使用預設配置。
需要修改配置,可以在mysql預設讀取的目錄中,建立一個my.cnf檔案(例如:/etc/my.cnf),把需要修改的配置內容寫入,重啟mysql後即可生效。
二、
mkdir -p /data/330{7..9}/data mkdir -p /binlog/330{7..9} chown -R mysql.mysql /data /binlog mv /etc/my.cnf my.cnf.bak --初始化時mysqld會讀取/etc下面的my.cnf mysqld --initialize-insecure --user=mysql --basedir=/app/database/mysql --datadir=/data/3307/data mysqld --initialize-insecure --user=mysql --basedir=/app/database/mysql --datadir=/data/3308/data mysqld --initialize-insecure --user=mysql --basedir=/app/database/mysql --datadir=/data/3309/data mv /etc/my.cnf.bak my.cnf
2、
cat > /data/3307(3308、3309)/my.cnf <<EOF [mysqld] user=mysql basedir=/app/database/mysql datadir=/data/3307(3308、3309)/data log_error=/data/3307(3308、3309)/mysql.log log_bin=/binlog/3307(3308、3309)/mysql-bin server_id=7(8,9) port=3307(3308、3309) socket=/tmp/mysql3307(3308、3309).sock EOF
3、
cd /etc/systemd/system cp mysqld.service mysqld3307.service cp mysqld.service mysqld3308.service cp mysqld.service mysqld3309.service vim mysqld3307.service ExecStart=/app/mysql/bin/mysqld --defaults-file=/data/3307/my.cnf vim mysqld3308.service ExecStart=/app/mysql/bin/mysqld --defaults-file=/data/3308/my.cnf vim mysqld3309.service ExecStart=/app/mysql/bin/mysqld --defaults-file=/data/3309/my.cnf