先查看操作系統版本號以及內核,執行命令:
uname -a
cat /etc/redhat-release

此時可看到內核版本為aarch64,操作系統版本號為CentOS 7.6,然后去下載所對應的MySQL 的rpm安裝包,本次安裝使用的是mysql-5.7.27-1.el7.aarch64.rpm,5.7版本的mysql有依賴包,所以先進行依賴包安裝檢查:
yum list installed|grep libaio
yum list installed|grep numact
如果已經安裝,則會返回具體的版本號,反之則無信息返回,那就需要手動進行安裝,先使用yum Install命令進行安裝即可,如果服務器在局域網無法連通外網,則可以手動在阿里雲的yum源網頁中下載:http://mirrors.aliyun.com/centos/
確保依賴包已經安裝后,則可以安裝數據庫:
rpm -ihv mysql-5.7.27-1.el7.aarch64.rpm

rpm安裝包部署會新增mysql用戶,此時執行命令可以查:
cat /etc/passwd

安裝完畢后,此時可根據自己的實際需求修改數據庫配置文件/etc/my.cnf,如修改啟動端口等,以下是my.cnf文件的默認配置:
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
# Settings user and group are ignored when systemd is used.
# If you need to run mysqld under a different user or group,
# customize your systemd unit file for mariadb according to the
# instructions in http://fedoraproject.org/wiki/Systemd
[mysqld_safe]
log-error=/var/log/mariadb/mariadb.log
pid-file=/var/run/mariadb/mariadb.pid
#
# include all files from the config directory
#
!includedir /etc/my.cnf.d
本次安裝僅為驗證安裝可行性,並無任何業務要求,因此不對默認配置進行修改,但實際安裝時,個人建議一定要先查看服務器的存儲空間分布,把數據路徑放到最大的磁盤下。
df -h

本次安裝的服務器,最大磁盤是/目錄,而my.cnf默認數據路徑datadir=/var/lib/mysql,因此無需特意修改。
配置完配置文件后,需對數據庫進行初始化,切勿馬上啟動數據庫,否則可能會引起一些不必要的問題。執行初始化命令,把日志輸出到指定文件,方便初始化后查看root用戶的初始化密碼,或者出問題時查看報錯:
/usr/local/mysql/bin/mysqld --initialize --user=mysql > /home/initialize.log 2>&1
cat /home/initialize.log

日志中顯示了初始化密碼,表示初始化成功,此時可執行命令啟動數據庫:
systemctl start mysql
結果發現報錯:

報錯提示命令See "systemctl status mysql.service" and "journalctl -xe" for details.,查看報錯細節,但是執行systemctl status mysql.service或者journalctl -xe,如果返回結果有的行文字較多,會對行進行縮減,所以此時我們執行命令:
systemctl status mysql -l
可查看完整的報錯:

從報錯中可以看到,因為默認配置中的log-error=/var/log/mariadb/mariadb.log文件不存在,所以啟動失敗,此時去創建該日志文件,注意要把擁有者修改為mysql用戶:


然后再次啟動數據庫,就可以正常啟動了

查看進程:
ps -ef|grep mysql
此時會發現數據庫進程的啟動用戶為mysql,這是因為初始化時加了--user=mysql參數

啟動完成后,就可以登錄數據庫:
mysql -uroot -p
此時發現又報錯了

系統無法找到mysql的命令,這是因為沒有配置環境變量引起的,需修改環境變量配置文件:
vi /etc/profile
在最后一行加上參數:
export PATH=$PATH:/usr/local/mysql/bin
然后執行命令使配置馬上生效:
source /etc/profile
然后重新執行登錄數據庫命令,命令已經可以正常執行,輸入密碼后,結果又報錯了:

mysql -uroot -p的登錄命令,默認的sock文件是/tmp/mysql.sock,但是配置文件中默認的卻是socket=/var/lib/mysql/mysql.sock,所以此時無法正常登錄,需指定正確的sock文件才可以:
mysql -uroot -p -S /var/lib/mysql/mysql.sock
此時終於可以正常登陸了:

記得root的密碼在初始化數據庫時的日志文件中查看:

本以為可以正常登錄進去就完事了,結果執行查看數據庫的命令時,又報錯了,一看是沒認真看報錯,還以為自己命令打錯了,結果細看才發現真正的錯誤:
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
原來必須修改root用戶的密碼才能對數據庫進行操作,登錄進去數據庫修改root用戶密碼,不同版本的修改命令不一樣,我也沒記住,個人習慣了使用mysqladmin命令來修改root用戶的密碼,所以先執行exit命令退出登錄數據庫,然后執行命令修改root用戶的密碼:
mysqladmin -uroot -pnCAtg0wM<&o? password "newpassword"
結果又報錯了:

是因為初始化密碼中有特殊字符,所以不能明文寫到修改命令中,需去掉密碼:

結果還是報錯,此時報錯是sock文件不存在的報錯,需指定sock文件,再次執行終於成功了:

然后使用新密碼登錄數據庫再次執行命令驗證:

終於可以正常執行命令!!
本以為采坑到此結束,結果在服務器端執行命令沒有問題,在個人電腦使用工具連接數據庫是卻無法連接:

此時回到服務器端執行命令查看mysql數據庫下的user表里面的信息:

發現root用戶的host為localhost,所以才無法遠程登錄

此時執行命令修改host為%
update user set host='%' where user='root';

然后重啟數據庫

再重新使用工具連接數據庫,終於可以連接成功:

