1. 基礎(chǔ)環(huán)境及網(wǎng)絡(luò)配置
1.1 無網(wǎng)絡(luò)
1.11 時(shí)區(qū)與時(shí)間同步
sudo timedatectl set-timezone Asia/Shanghai (設(shè)置時(shí)區(qū))
sudo systemctl enable --now chronyd (啟動(dòng)時(shí)間同步服務(wù))
與運(yùn)維溝通,確認(rèn)所需要的端口在服務(wù)器管理平臺(tái)已經(jīng)放行
注意服務(wù)器環(huán)境為內(nèi)網(wǎng)時(shí),生產(chǎn)環(huán)境在外網(wǎng)的時(shí)候,就需要做映射
如果同時(shí)還涉及到域名,則需要讓該服務(wù)器對應(yīng)外網(wǎng)與到域名所指向的ip地址一致
1.2 有網(wǎng)絡(luò)
1.21.系統(tǒng)初始化與安全配置
sudo yum update -y && sudo yum upgrade -y( 更新系統(tǒng)及內(nèi)核)
sudo yum install -y vim wget curl net-tools lsof htop git unzip chrony(安裝常用工具)
1.22****網(wǎng)絡(luò)配置(防火墻配置Firewalld))
systemctl status firewalld 查看防火墻狀態(tài)
firewall-cmd --zone=public --add-port=3306/tcp --permanent (根據(jù)需求開放對應(yīng)的端口)
常見的有443 6379 3306
firewall-cmd --reload 重載防火墻
2. java配置
2.1 無網(wǎng)絡(luò)
2.11 從共享庫拿到壓縮包
\192.168.1.122\共享\工具2 里面找到j(luò)dk-8u381-linux-x64.tar.gz 然后通過Xftp放到/root下
2.12解壓:使用解壓命令解壓
tar -zxvf “你的文件名” -C /usr/local
2.13配置變量
打開配置文件 vim /etc/profile
鼠標(biāo)移動(dòng)到最后 按i進(jìn)入編輯模式
添加下列內(nèi)容
export JAVA_HOME=/usr/local/jdk1.8.0_381
export PATH=PATH
添加結(jié)束后esc退出編輯模式 shfit+:wq保存
2.14 重載配置文件
source /etc/profile
2.15查看java版本 java -version
在 /usr/local 下執(zhí)行 運(yùn)行jar包命令(啟動(dòng)之前要保持mysql和redis服務(wù)開啟狀態(tài))
nohup java -Dfile.encoding=utf-8 -jar lj.jar --server.port=8908 > /usr/local/null 2>&1 &
執(zhí)行之后查看Java狀態(tài)
ps -ef | grep java 多查幾次,有問題就看 日志 ,沒問題就會(huì)提示開啟成功 ,之后用ip+端口測試
2.2 有網(wǎng)絡(luò)
切換路徑到/root
2.21 下載壓縮包
<u>https://download.oracle.com/otn/java/jdk/8u451-b10/8a1589aa0fe24566b4337beee47c2d29/jdk-8u451-linux-x64.tar.gz?AuthParam=1746685279_f3515097ad1c354674bb5fb3177168aa</u> 要提前準(zhǔn)備好oracle 賬號(hào)和密碼
根據(jù)所需要的版本下載liunx版本的tar.gz jdk
2.22解壓:使用解壓命令解壓
tar -zxvf “你的文件名” -C /usr/local
2.23 配置變量
打開配置文件 vim /etc/profile
鼠標(biāo)移動(dòng)到最后 按i進(jìn)入編輯模式
添加下列內(nèi)容
export JAVA_HOME=/usr/local/jdk1.8.0_381
export PATH=PATH
添加結(jié)束后esc退出編輯模式 shfit+:wq保存
2.24 重載配置文件
source /etc/profile
**2.25查看java版本 java -version **
在 /usr/local 下執(zhí)行 運(yùn)行jar包命令(啟動(dòng)之前要保持mysql和redis服務(wù)開啟狀態(tài))
nohup java -Dfile.encoding=utf-8 -jar lj.jar --server.port=8908 > /usr/local/null 2>&1 &
執(zhí)行之后查看Java狀態(tài)
ps -ef | grep java 多查幾次,有問題就看 日志 ,沒問題就會(huì)提示開啟成功 ,之后用ip+端口測試
3. nginx配置(含ssl模塊)
3.1無網(wǎng)絡(luò)
3.11安裝GCC
首先查詢gcc --version 版本 可能有環(huán)境就不需要安裝 (有的話直接跳過下面的gcc相關(guān)操作)
進(jìn)入cd /usr/local/src/ 目錄下
創(chuàng)建buildgcc文件夾
上傳gcc安裝包及相關(guān)依賴包
解壓依賴包
rpm -Uvh *.rpm --nodeps --force
進(jìn)入gcc目錄
cd /usr/local/src/gcc-4.8.5
查看gcc是否安裝成功
gcc -v
3.12 本地下載其他依賴庫 并放到/root 目錄下
Prce下載地址 https://nchc.dl.sourceforge.net/project/pcre/pcre/8.45/pcre-8.45.tar.gz?viasf=1
Zlib庫下載地址 https://zlib.net/fossils/
Openssl下載地址 https://www.openssl.org/source/openssl-1.1.1w.tar.gz
3.2有網(wǎng)絡(luò)
3.21 更換源
下載之前先換YUM源 將yum換為國內(nèi)源
方法一:
備份現(xiàn)有源:
sudo cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
安裝依賴工具
sudo yum install -y wget
下載新的源文件,指令如下:
sudo wget -O /etc/yum.repos.d/CentOS-Base.repo <u>https://mirrors.aliyun.com/repo/Centos-7.repo</u>
也可不下載
方法二:
sudo vi /etc/yum.repos.d/CentOS-Base.repo
然后直接復(fù)制下內(nèi)容:
CentOS-Base.repo
The mirror system uses the connecting IP address of the client and the
update status of each mirror to pick mirrors that are updated to and
geographically close to the client. You should use this for CentOS updates
unless you are manually picking other mirrors.
If the mirrorlist= does not work for you, as a fall back you can try the
remarked out baseurl= line instead.
[base]
name=CentOS-$releasever - Base - mirrors.aliyun.com
failovermethod=priority
baseurl=http://mirrors.aliyun.com/centos/basearch/
http://mirrors.aliyuncs.com/centos/$releasever/os/$basearch/
http://mirrors.cloud.aliyuncs.com/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7
released updates
[updates]
name=CentOS-$releasever - Updates - mirrors.aliyun.com
failovermethod=priority
baseurl=http://mirrors.aliyun.com/centos/basearch/
http://mirrors.aliyuncs.com/centos/$releasever/updates/$basearch/
http://mirrors.cloud.aliyuncs.com/centos/$releasever/updates/$basearch/
gpgcheck=1
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7
additional packages that may be useful
[extras]
name=CentOS-$releasever - Extras - mirrors.aliyun.com
failovermethod=priority
baseurl=http://mirrors.aliyun.com/centos/basearch/
http://mirrors.aliyuncs.com/centos/$releasever/extras/$basearch/
http://mirrors.cloud.aliyuncs.com/centos/$releasever/extras/$basearch/
gpgcheck=1
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7
additional packages that extend functionality of existing packages
[centosplus]
name=CentOS-$releasever - Plus - mirrors.aliyun.com
failovermethod=priority
baseurl=http://mirrors.aliyun.com/centos/basearch/
http://mirrors.aliyuncs.com/centos/$releasever/centosplus/$basearch/
http://mirrors.cloud.aliyuncs.com/centos/$releasever/centosplus/$basearch/
gpgcheck=1
enabled=0
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7
contrib - packages by Centos Users
[contrib]
name=CentOS-$releasever - Contrib - mirrors.aliyun.com
failovermethod=priority
baseurl=http://mirrors.aliyun.com/centos/basearch/
http://mirrors.aliyuncs.com/centos/$releasever/contrib/$basearch/
http://mirrors.cloud.aliyuncs.com/centos/$releasever/contrib/$basearch/
gpgcheck=1
enabled=0
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7
保存退出,操作如下:
1、按Esc
2、輸入:wq!
3、按Enter
方法三:
配置公共DNS(如Google DNS):
echo "nameserver 8.8.8.8" | sudo tee /etc/resolv.conf
echo "nameserver 8.8.4.4" | sudo tee -a /etc/resolv.conf
更換CentOS鏡像源
sudo sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-*
sudo sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-*
生成緩存
配置新的源后,需要清理yum的舊緩存并生成新緩存,指令如下:
sudo yum clean all
sudo yum makecache
檢查新源
輸入以下指令:yum repolist
[圖片上傳失敗...(image-205f36-1748590217020)]
如果輸出中包含了阿里源,則證明已換源成功。
更新系統(tǒng) yum -y update
GCC安裝
yum -y install gcc gcc-c++ autoconf make
直接在/root目錄下執(zhí)行
3.22下載相關(guān)依賴和 nginx 壓縮包
wget https://nchc.dl.sourceforge.net/project/pcre/pcre/8.45/pcre-8.45.tar.gz
wget https://zlib.net/fossils/zlib-1.3.1.tar.gz
wget https://www.openssl.org/source/openssl-1.1.1w.tar.gz
在線下載比較慢,建議迅雷下載放到服務(wù)器上
wget https://nginx.org/download/nginx-1.24.0.tar.gz
3.23 Openssl安裝配置
安裝構(gòu)建工具和依賴
yum install -y gcc gcc-c++ make zlib-devel pcre-devel geoip-devel epel-release perl-IPC-Cmd perl-Test-Simple
安裝之后執(zhí)行以下命令查看是否安裝成功
gcc --version
g++ --version
make --version
rpm -q zlib-devel pcre-devel GeoIP-devel perl-IPC-Cmd perl-Test-Simple
因下載之后的步驟都一致所以放在下面一起寫
解壓
執(zhí)行 tar -zxvf nginx-1.24.0.tar.gz -C /usr/local/src
tar -zxvf openssl-1.1.1w.tar.gz -C /usr/local/src
tar -zxvf pcre-8.45.tar.gz -C /usr/local/src
tar -zxvf zlib-1.3.1.tar.gz -C /usr/local/src
openssl編譯安裝
進(jìn)入 openssl-1.1.1w 目錄
編譯
./config --prefix=/usr/local/openssl-1.1.1w \
--openssldir=/usr/local/openssl-1.1.1w/ssl \
no-shared
可能提示需要perl 5庫
和上面一樣將perl 壓縮包放到/root下
tar -zxvf perl.xxx.tar.gz -C /usr/local/src
進(jìn)入 perl 文件夾cd /perl
編譯 ./Configure -des -Dprefix=/usr/local/perl
make
make install安裝
安裝
make
make install
查看版本 驗(yàn)證是否安裝成功
/usr/local/openssl-1.1.1w/bin/openssl version
可能直接查出來版本還是系統(tǒng)自帶的,可以按下面步驟操作
備份舊版本
sudo mv /usr/bin/openssl /usr/bin/openssl.old
步驟2:創(chuàng)建符號(hào)鏈接指向新版本
sudo ln -s /usr/local/openssl-1.1.1w/bin/openssl /usr/bin/openssl
更新動(dòng)態(tài)庫鏈接
echo "/usr/local/openssl/lib" | sudo tee /etc/ld.so.conf.d/openssl.conf
sudo ldconfig
驗(yàn)證版本
openssl version
應(yīng)顯示 1.1.1w
** pcre編譯安裝**
編譯
./configure --prefix=/usr/local/pcre-8.45 \
--enable-utf8 \
--enable-unicode-propertie
安裝
make
make install
zlib 編譯安裝
進(jìn)入到 /usr/local/src/zlib-1.3.1下
編譯 ./configure --prefix=/usr/local/zlib
安裝
make
make install
如果安裝到自定義路徑(如 /usr/local/zlib),需更新鏈接庫配置:
echo '/usr/local/zlib/lib' | sudo tee /etc/ld.so.conf.d/zlib.conf
sudo ldconfig
nginx編譯安裝
進(jìn)入到 /usr/local/src/nginx1.24.0下
編譯
./configure \
--prefix=/usr/local/nginx1.24.0 \
--with-http_ssl_module \
--with-openssl=/usr/local/src/openssl-1.1.1w \
--with-openssl-opt="no-shared" \
--with-pcre=/usr/local/src/pcre-8.45 \
--with-zlib=/usr/local/src/zlib-1.3.1
make
make install
進(jìn)入 nginx1.24.0/sbin
./nginx 啟動(dòng) 打開網(wǎng)頁 服務(wù)器ip測試nginx啟動(dòng)成功
如果使用 --with-openssl-opt="no-shared",需在 OpenSSL 配置時(shí)啟用靜態(tài)庫:
cd /usr/local/src/openssl-1.1.1w
./config --prefix=/usr/local/openssl-1.1.1w no-shared
證書配置
1.****創(chuàng)建一個(gè)目錄用于存放證書文件:
sudo mkdir -p /usr/local/nginx1.24.0/conf/ssl
cd /usr/local/nginx1.24.0/conf/ssl
2. 生成私鑰
生成一個(gè) 2048 位的 RSA 私鑰(可以調(diào)整為 4096 位以增強(qiáng)安全性):
sudo openssl genrsa -out testyw.key 2048
3. 生成自簽名證書
使用 CSR 文件生成自簽名證書,有效期為 365 天(可以調(diào)整天數(shù)):
openssl req -x509 -new -key testyw.key -days 365 -out testyw.crt \
-subj "/C=CN/ST=Beijing/L=Beijing/O=Your Company/CN=your_domain.com"生成的 yourdomain.crt 和 yourdomain.key 文件非常重要,請妥善保存并定期備份。
如果有證書配置看下面 nginx配置案例
server {
listen 443 ssl;
server_name szmp.zhihuiwuxue.com;
ssl_certificate_key cert/zhihuiwuxue.com.key;
ssl_certificate cert/zhihuiwuxue.com.pem;
ssl_session_timeout 5m;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
ssl_prefer_server_ciphers on;
location /api {
rewrite ^/api/(.*)1 break;
add_header 'Access-Control-Allow-Origin' $http_origin;
add_header 'Access-Control-Allow-Credentials' 'true';
add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS';
add_header 'Access-Control-Allow-Headers' 'DNT,web-token,app-token,Authorization,Accept,Origin,Keep-Alive,User-Agent,X-Mx-ReqToken,X-Data-Type,X-Auth-Token,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Range';
add_header 'Access-Control-Expose-Headers' 'Content-Length,Content-Range';
if ($request_method = 'OPTIONS') {
add_header 'Access-Control-Max-Age' 1728000;
add_header 'Content-Type' 'text/plain; charset=utf-8';
add_header 'Content-Length' 0;
return 204;
}
root html;
index index.html index.htm;
proxy_pass http://172.20.100.67:8501;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_connect_timeout 5;
}
}
證書的相關(guān)文件放在/conf/cert目錄下
這樣配置的證書,主要用于測試
配置局域網(wǎng)設(shè)備的域名解析
其他設(shè)備需將域名解析到服務(wù)器的局域網(wǎng) IP。
在每臺(tái)設(shè)備的 hosts 文件中添加:
Windows: C:\Windows\System32\drivers\etc\hosts
Linux/macOS: /etc/hosts
192.168.1.100 your_domain.com
4. redis配置
無網(wǎng)絡(luò)
上傳\192.168.1.122\共享\工具2\linux安裝部署\redis離線下的redis-3.2.12-2.el7.x86_64.rpm和jemalloc-3.6.0-1.el7.x86_64.rpm 到服務(wù)器的/usr/local/src 及 redis-5.0.4.tar.gz 到/root
1. **安裝相關(guān)依賴 **
執(zhí)行 rpm -ivh jemalloc-3.6.0-1.el7.x86_64.rpm
rpm -ivh redis-3.2.12-2.el7.x86_64.rpm 安裝命令
有網(wǎng)絡(luò)
1.下載 壓縮包
wget http://download.redis.io/releases/redis-5.0.4.tar.gz
下載好后的操作 都一致 所以都放在下面
2. 解壓壓縮包
tar -xzvf redis-5.0.4.tar.gz -C /usr/local 指定解壓到/usr/local 目錄下
3. 安裝redis
cd /usr/local /redis-5.0.4
make
make install
4. 配置 redis
默認(rèn)安裝目錄是在 /usr/local/bin
cd /usr/local/bin
可以復(fù)制redis配置文件到bin目錄下
cp /usr/local/redis-5.0.4/redis.conf ./
4.1編輯配置文件
vim redis.conf或者 vi redis.conf
1.daemonize no --->yes 允許后臺(tái)啟動(dòng)
2.bind 127.0.0.0 ---> 0.0.0.0 允許遠(yuǎn)程訪問
3.加一個(gè)requirepass 123456 設(shè)置123456密碼
啟動(dòng)redis(在/usr/local/bin)下執(zhí)行
./redis-server redis.conf 啟動(dòng)
redis-cli auth 123456
輸入shutdown 停止 redis
可選配置:(配置開機(jī)自啟動(dòng))
使用root權(quán)限創(chuàng)建服務(wù)文件:
sudo vim /etc/systemd/system/redis.service
輸入以下內(nèi)容(根據(jù)你的路徑調(diào)整):
[Unit]
Description=Redis In-Memory Data Store
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/bin/redis-server /usr/local/bin/redis.conf
ExecStop=/usr/local/bin/redis-cli shutdown
User=redis
Group=redis
Restart=always
RuntimeDirectory=redis
RuntimeDirectoryMode=0755
[Install]
WantedBy=multi-user.target
步驟2:創(chuàng)建Redis專用用戶(可選但推薦)
sudo useradd -r -M -s /bin/false redis
sudo chown -R redis:redis /usr/local/redis-5.0.4
調(diào)整配置文件權(quán)限
確保配置文件可被Redis用戶讀?。?/p>
sudo chmod 644 /usr/local/bin/redis.conf
重載Systemd并啟用服務(wù)
sudo systemctl daemon-reload
sudo systemctl enable redis
sudo systemctl start redis
systemctl status redis
提示:如果配置開機(jī)自啟動(dòng),就需要通過systemctl stop redis 停止,不能通過shutdown,暫時(shí)沒有更好的解決方法。
啟動(dòng)后使用本機(jī)RDM 鏈接測試
5. mysql配置
5.1 準(zhǔn)備工作:先查詢是否安裝了mysql
查詢是否安裝了自帶的數(shù)據(jù)庫
rpm -qa |grep mariadb 有的話卸載相關(guān)數(shù)據(jù)庫
rpm -e --nodeps mariadb-libs-5.5.68-1.el7.x86_64
sudo yum remove -y mariadb-server mariadb
sudo yum remove -y mysql-server mysql-community-server
特殊情況:允許 MySQL 與其他數(shù)據(jù)庫共存
如果希望保留現(xiàn)有數(shù)據(jù)庫(如 MariaDB),需確保兩者使用不同的端口和數(shù)據(jù)目錄:
修改 MySQL 配置文件 /etc/my.cnf,調(diào)整端口和路徑:
[mysqld]
port=3307 # 改為新端口
datadir=/var/lib/mysql-mysql8 # 改為新路徑
初始化數(shù)據(jù)庫時(shí)指定新路徑:
sudo mysqld --initialize --user=mysql --datadir=/var/lib/mysql-mysql8
安裝相關(guān)依賴
yum install -y perl net-tools
無網(wǎng)絡(luò)
1.上傳壓縮包
將壓縮包通過Xftp傳到 服務(wù)器 /usr/local/ 中
有網(wǎng)絡(luò)
1.系統(tǒng)準(zhǔn)備
1. 更新系統(tǒng)軟件包
sudo yum update -y
2. 安裝必要工具(wget、vim等)
sudo yum install -y wget vim perl net-tools
- 下載壓縮包
執(zhí)行
wget <u>https://cdn.mysql.com/archives/mysql-8.0/mysql-8.0.34-linux-glibc2.12-x86_64.tar.xz</u>
因下載后的操作一致,所以都放在下面
2.解壓壓縮包
解壓到/usr/local目錄并重命名文件夾
創(chuàng)建目標(biāo)目錄
sudo mkdir -p /usr/local/mysql
sudo mkdir -p /data/mysql # 數(shù)據(jù)目錄
解壓安裝包
sudo tar -xvf mysql-8.0.34-linux-glibc2.12-x86_64.tar.xz --transform 's/mysql-8.0.34-linux-glibc2.12-x86_64/mysql/' -C /usr/local
3.****創(chuàng)建MySQL用戶和組
groupadd mysql
useradd -r -g mysql -s /bin/false mysql
4.設(shè)置目錄權(quán)限
sudo chown -R mysql:mysql /usr/local/mysql
sudo chown -R mysql:mysql /data/mysql
進(jìn)入MySQL目錄
cd /usr/local/mysql
初始化數(shù)據(jù)庫(生成臨時(shí)密碼)
cd /usr/local/mysql
sudo bin/mysqld --initialize --user=mysql \
--basedir=/usr/local/mysql \
--datadir=/data/mysql
可能會(huì)提示缺少 libaio.so.1 庫
這是要執(zhí)行命令查看系統(tǒng)信息
可以通過
<u>https://vault.centos.org/7.9.2009/os/x86_64/Packages/libaio-0.3.109-13.el7.x86_64.rpm</u> 下載對應(yīng)版本的庫,進(jìn)行安裝
rpm -ivh libaio-*.rpm
可以訪問外網(wǎng)就直接sudo yum install libaio 可以下載安裝 比較方便。
初始化完成后,記錄輸出的臨時(shí)密碼(或查看錯(cuò)誤日志中的密碼):
hgupZPa_)5EG
grep 'temporary password' /var/lib/mysql/error.log
**5.****配置MySQL服務(wù)******
創(chuàng)建配置文件****/etc/my.cnf****:
sudo tee /etc/my.cnf <<EOF
[mysqld]
# 基礎(chǔ)路徑配置
basedir=/usr/local/mysql
datadir=/data/mysql
socket=/tmp/mysql.sock
# 網(wǎng)絡(luò)配置
port=3306
bind-address=0.0.0.0
# 字符集配置
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci
# 日志配置
log-error=/data/mysql/error.log
pid-file=/data/mysql/mysql.pid
# 安全配置
skip-name-resolve
EOF
創(chuàng)建必要目錄并授權(quán)
sudo mkdir -p /data/mysql/{data,logs}
sudo chown -R mysql:mysql /data/mysql
創(chuàng)建Systemd服務(wù)文件 /etc/systemd/system/mysql.service
sudo tee /etc/systemd/system/mysql.service <<EOF
[Unit]
Description=MySQL Server
After=network.target
[Service]
Type=simple
User=mysql
Group=mysql
ExecStart=/usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf
Restart=on-failure
RestartSec=5s
資源限制(可選)
LimitNOFILE=65535
[Install]
WantedBy=multi-user.target
EOF
重新加載服務(wù)配置
systemctl daemon-reload
systemctl start mysql
systemctl enable mysql 設(shè)置開啟啟動(dòng)
6.****登錄MySQL并修改密碼
使用臨時(shí)密碼登錄
mysql -u root -p
輸入臨時(shí)密碼后,執(zhí)行以下命令修改密碼
ALTER USER 'root'@'localhost' IDENTIFIED BY '你的新密碼';
FLUSH PRIVILEGES;
退出MySQL后,使用新密碼重新登錄
mysql -u root -p
常見問題處理
1. 安裝時(shí)提示版本沖突
如果倉庫中默認(rèn)指向更高版本(如 8.0.36),需手動(dòng)禁用默認(rèn)倉庫并啟用舊版本子倉庫:
編輯倉庫配置文件
sudo vi /etc/yum.repos.d/mysql-community.repo
禁用默認(rèn)倉庫(設(shè)置 enabled=0)
啟用特定子倉庫(如 mysql80-community)
2. 忘記 root 密碼
停止 MySQL 服務(wù)
sudo systemctl stop mysqld
以跳過權(quán)限驗(yàn)證方式啟動(dòng)
sudo mysqld_safe --skip-grant-tables &
登錄后更新密碼
mysql -u root
mysql> FLUSH PRIVILEGES;
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'NewPassword';
附錄:手動(dòng)下載 RPM 包(備用方法)
如果倉庫中沒有所需版本,可手動(dòng)下載并安裝:
下載 MySQL 8.0.34 社區(qū)版 RPM 包
wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-community-server-8.0.34-1.el7.x86_64.rpm
安裝依賴
sudo yum install -y openssl libaio numactl
安裝 MySQL
sudo rpm -ivh mysql-community-server-8.0.34-1.el7.x86_64.rpm
可選:配置環(huán)境變量
將MySQL二進(jìn)制路徑添加到PATH
echo 'export PATH=/usr/local/mysql/bin:$PATH' >> /etc/profile
source /etc/profile
開放端口
firewall-cmd --add-port=3306/tcp --permanent
firewall-cmd --reload
啟動(dòng)mysql
service mysql start
查看MySQL的進(jìn)程 ps -ef|grep mysql
service mysql status
開啟mysql允許遠(yuǎn)程訪問
查看所有數(shù)據(jù)庫
show databases;
use mysql;
執(zhí)行update user set host='%' where user='root';
開啟任何主機(jī)都能遠(yuǎn)程訪問MySQL
執(zhí)行FLUSH PRIVILEGES;刷新權(quán)限
端口相關(guān)問題匯總:
先統(tǒng)計(jì)需要用的端口,匯總到運(yùn)維,待運(yùn)維給出開放通知后,到服務(wù)器 查看服務(wù)器內(nèi)部防火墻開啟狀態(tài),因?yàn)橄纫_認(rèn)端口開通成功,建議先關(guān)閉防火墻,直接使用nginx監(jiān)聽開放端口,如果可以監(jiān)聽成功則說明運(yùn)維開放端口成功無誤。
firewall-cmd --zone=public --remove-port=9001/tcp --permanent 關(guān)閉端口