1. 程式人生 > 其它 >java面向物件-異常

java面向物件-異常

技術標籤:MySQLmysql資料庫

引入

為什麼要做MySQL多例項部署?無論是個人學習,還是生產環境,MySQL在執行過程中所佔用的系統資源並不多,每個作業系統中只安裝一個MySQL,無疑非常浪費資源。從學習角度來講,搭建分散式的MySQL環境,由於個人電腦的配置並不高,無法搭建多個虛擬機器環境,因此一個作業系統中部署多個MySQL例項是一個性價比非常高的選擇,在這裡,我們要參考MySQL綠色安裝來進行多例項環境部署。

目標以及準備

  • 作業系統: Centos7
  • 例項數量:3

安裝步驟

  1. 下載安裝包
wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.32-linux-glibc2.12-x86_64.tar.gz
  1. 解壓
tar zxvf mysql-5.7.32-linux-glibc2.12-x86_64.tar.gz
  1. 移動
mv mysql-5.7.32-linux-glibc2.12-x86_64 /usr/local/mysql
  1. 修改環境變數/ect/profile
export PATH=$PATH:/usr/local/mysql/bin
  1. 解除安裝mariadb
rpm -qa|grep mariadb
yum remove mariadb-libs-5.5.68-1.el7.x86_64 -y
``
6. 建立使用者
```bash
useradd -s /sbin/nologin mysql
  1. 建立資料目錄
mkdir -p /data/330{6,7,8}/data
  1. 授權
chown -R mysql.mysql /usr/local/mysql
chown -R mysql.mysql /data
  1. 無密碼初始化
mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/data/3306/data
mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/data/3307/data
mysqld --initialize-insecure --user=
mysql --basedir=/usr/local/mysql --datadir=/data/3308/data
  1. 建立MySQL配置檔案
cat >/data/3306/my.cnf <<EOF
[mysqld]
basedir=/usr/local/mysql
datadir=/data/3306/data
socket=/data/3306/mysql.sock
log_error=/data/3306/mysql.log
port=3306
server_id=6
log_bin=/data/3306/mysql-bin
character-set-server=utf8
lower_case_table_names=1
EOF
cat >/data/3307/my.cnf <<EOF
[mysqld]
basedir=/usr/local/mysql
datadir=/data/3307/data
socket=/data/3307/mysql.sock
log_error=/data/3307/mysql.log
port=3307
server_id=7
log_bin=/data/3307/mysql-bin
character-set-server=utf8
lower_case_table_names=1
EOF
cat >/data/3308/my.cnf <<EOF
[mysqld]
basedir=/usr/local/mysql
datadir=/data/3308/data
socket=/data/3308/mysql.sock
log_error=/data/3308/mysql.log
port=3308
server_id=8
log_bin=/data/3308/mysql-bin
character-set-server=utf8
lower_case_table_names=1
EOF
  1. 建立系統服務檔案
cat > /usr/lib/systemd/system/mysqld3306.service <<EOF
[Unit]
Description=MySQL Server
Documentation=man:mysqld
Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html
After=network.target
[Install]
WantedBy=multi-user.target
[Service]
User=mysql
Group=mysql
ExecStart=/usr/local/mysql/bin/mysqld --defaults-file=/data/3306/my.cnf
LimitNOFILE=5000
EOF
cat > /usr/lib/systemd/system/mysqld3307.service <<EOF
[Unit]
Description=MySQL Server
Documentation=man:mysqld
Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html
After=network.target
[Install]
WantedBy=multi-user.target
[Service]
User=mysql
Group=mysql
ExecStart=/usr/local/mysql/bin/mysqld --defaults-file=/data/3307/my.cnf
LimitNOFILE=5000
EOF
cat > /usr/lib/systemd/system/mysqld3308.service <<EOF
[Unit]
Description=MySQL Server
Documentation=man:mysqld
Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html
After=network.target
[Install]
WantedBy=multi-user.target
[Service]
User=mysql
Group=mysql
ExecStart=/usr/local/mysql/bin/mysqld --defaults-file=/data/3308/my.cnf
LimitNOFILE=5000
EOF
  1. 啟動服務
systemctl start mysqld3306.service
systemctl start mysqld3307.service
systemctl start mysqld3307.service

13.檢查服務

ps -ef|grep mysql

在這裡插入圖片描述