五分鐘快速部署 MySQL:二進制方式
本篇文章分享MySQL五種部署方式中的二進制部署。
一、環境準備
1. 實驗環境
操作系統 | CPU | 內存 | 磁盤 |
openEuler22.03 SP3 | 2core | 4G | 100 |
生產環境建議單獨弄一個磁盤放置MySQL數據。
2. 安裝依賴
yum install -y libaio libaio-devel
3. 檢測并刪除mariadb
部分操作系統會自動安裝mariadb,如果不刪除,后面會產生沖突
rpm -qa|grep mariadb
# 如果存在mariadb相關包,那就將其卸載
rpm -e --nodeps mariadb
二、下載 MySQL 二進制包
MySQL官網下載地址:https://dev.mysql.com/downloads/mysql/
打開 MySQL 官方下載頁面,選擇 MySQL Community (GPL) 版本,根據操作系統選擇合適的二進制格式(通常為 Linux - Generic 版本)。。
下載 .tar.xz 壓縮包,如果有網環境,直接通過下面命令安裝:
wget https://cdn.mysql.com//Downloads/MySQL-8.4/mysql-8.4.4-linux-glibc2.28-x86_64.tar.xz
三、安裝前配置
1. 解壓安裝包
# 解壓到/data目錄下
mkdir /data
tar -xvf mysql-8.4.4-linux-glibc2.28-x86_64.tar.xz -C /data
# 修改MySQL解壓路徑名字
mv /data/mysql-8.4.4-linux-glibc2.28-x86_64/ /data/mysql
2. 添加 MySQL 用戶和組
groupadd mysql
useradd -r -g mysql -s /bin/false mysql
3. 設置目錄權限并創建軟連接
chown -R mysql:mysql /data/mysql
chmod -R 755 /data/mysql
ln -s /data/mysql /usr/local/mysql
# 注意要使用絕對路徑來創建軟鏈接
4. 添加mysql到系統環境變量
vi /etc/profile
# 在文件最尾端添加下面內容
export PATH=$PATH:/usr/local/mysql/bin
# 使配置立即生效
source /etc/profile
四、初始化數據庫
1. 初始化數據目錄
進入 MySQL 安裝目錄,并初始化數據目錄:
[root@localhost ~]# cd /data/mysql/
[root@localhost mysql]# ./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
輸出日志:初始化完成后,控制臺會顯示 root 用戶的臨時密碼(例如:am.wpieUL2oJ)。務必記下該密碼。
2. 檢查初始化結果
檢查數據目錄是否生成了文件和子目錄:
ll /usr/local/mysql/data
【溫馨提示】我前面是做了軟鏈接,實際數據是存放在/data/mysql目錄下面
五、配置 MySQL
創建 MySQL 配置文件 /etc/my.cnf:
sudo vi /etc/my.cnf
添加以下內容:
[mysqld]
port = 3306
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
socket = /tmp/mysql.sock
user = mysql
log_error = /usr/local/mysql/data/mysql.log
character-set-server = utf8mb4
# 優化參數
skip_name_resolve = 1
max_connections = 500
max_allowed_packet=200M
innodb_buffer_pool_size = 512M
innodb_log_file_size = 128M
六、啟動 MySQL
1. 使用 mysqld_safe 啟動 MySQL
cp -a /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
/usr/local/mysql/bin/mysqld_safe --user=mysql &
檢查 MySQL 是否啟動成功:
ps -ef | grep mysqld
重啟會失效:
reboot
所以要設置開機自啟動。
2. 設置開機自啟動
# 設置開機自啟動
chkconfig --level 35 mysqld on
# 重啟MySQL
/etc/init.d/mysqld restart
# 查看狀態
/etc/init.d/mysqld status
七、設置初始密碼
1. 登錄 MySQL
使用初始化時生成的臨時密碼登錄:
mysql -u root -p
2. 修改 root 密碼
登錄后,執行以下 SQL 語句修改密碼:
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
如果需要兼容舊客戶端,切換為 mysql_native_password:
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';
刷新權限:
FLUSH PRIVILEGES;
至此,部署已經完成。