开工之前:

检查是否已安装MySQL

查看是否已经安装MySQL

rpm -qa|grep mysql

删除已经安装的MySQL

rpm -e –nodeps mysql-libs*

检查是否安装mariadb

rpm -qa | grep mariadb-libs

例:mariadb-libs-5.5.56-2.el7.x86_64

卸载mariadb

yum remove -y mariadb-libs-5.5.56-2.el7.x86_64

1. 添加mysql用户组和mysql用户,用于隔离mysql进程

# groupadd -r mysql && useradd -r -g mysql -s /sbin/nologin -M mysql

2.安装依赖库

# yum install -y libaio*

3. 下载解压Mysql

​# wget https://obs.cn-north-4.myhuaweicloud.com/obs-mirror-ftp4/database/mysql-5.7.27-aarch64.tar.gz# tar -xvf  mysql-5.7.27-aarch64.tar.gz -C /usr/local/

4.一顿操作

# mv /usr/local/mysql-5.7.27-aarch64 /usr/local/mysql  //移动文件# mkdir -p /usr/local/mysql/logs   //创建文件夹# chown -R mysql:mysql /usr/local/mysql  //配置权限# ln -sf /usr/local/mysql/my.cnf /etc/my.cnf# cp -rf /usr/local/mysql/extra/lib* /usr/lib64/# mv /usr/lib64/libstdc++.so.6 /usr/lib64/libstdc++.so.6.old# ln -s /usr/lib64/libstdc++.so.6.0.24 /usr/lib64/libstdc++.so.6

5.修改mysql配置文件

cat < /etc/my.cnf[mysql]default-character-set=utf8mb4[client]socket=/tmp/mysql.sock[mysqld]user=mysqlbasedir=/usr/local/mysqldatadir=/usr/local/mysql/datapid-file=/usr/local/mysql/data/mysql.pidlog-error=/usr/local/mysql/data/mysql.errcharacter-set-server=utf8mb4collation-server=utf8mb4_binport = 3306EOF

你也可以直接去FTP改文件,比较方便

6.添加环境变量

vim /etc/profile 加上下面两行,也可以直接去ftp目录下改export MYSQL_HOME=/usr/local/mysqlexport PATH=$PATH:$MYSQL_HOME/binsource /etc/profile

7.初始化

# /usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --explicit_defaults_for_timestamp=true

这个命令执行之前,必须确保/usr/local/mysql/data目录存在并且一定要为空目录,否则报错;

这个命令执行完之后,会生成一个临时密码,在data文件夹下(路径/usr/local/mysql/data/mysql.err),冒号后面的就是密码

8.启动服务尝试登录

cd /usr/local/mysql/support-files./mysql.server start

开始尝试登录

mysql -uroot -p   // 登录,此时会让你输入密码,输入刚才的临时密码

如果登录成功了,直接往下走,修改密码,不用看下个代码段

如果报错参考下面的方法,使用安全模式登录:先把mysql的进程都杀掉ps -aux | grep mysql | grep -v grep   //查看进程kill -9 XXXXX        //XXXXX是进程号全部杀掉后继续查看进程,没有显示,证明杀光了,然后进入安全模式cd /usr/local/mysql/bin./mysqld_safe --skip-grant-tables修改root密码use mysql  update user set password=password("你想要的密码") where user="root";flush privileges;  

正常修改密码:

mysql> update mysql.user set authentication_string=password('*******') where user='*******'; #修改密码成功

创建一个用户:

create user 'username'@'host' identified by 'password';创建账号为username,密码为password的用户

host 改为 % 意思是可以外网访问

grant all privileges on *.* to 'username'@'%' identified by 'password';flush privileges;     //赋予username所有权限

root用户配置外网访问

use mysql;update user set host='%' where user = 'root';flush privileges;

为什么要整两遍呢,怕你出现啥错误,反正root和username只要有一个能登陆就行,我们的目的是只要能登录啥都好说,剩下的事去navicat上解决,切记调试的时候修改配置文件记得重启服务:/etc/init.d/mysqld restart

查看端口命令  :use mysql;showglobalvariableslike'port';     //这个命令不能复制,只能手敲,别问,就是这么沙雕

查看端口号和配置文件是否相同,然后把这个端口号防火墙关闭:

firewall-cmd --zone=public --add-port=3306/tcp --permanent   //开放端口firewall-cmd --reload   //重启防火墙,这个必须,否则不生效

然后去navicat上连一下,成功之后再去Navicat上处理账号问题,想删想改随你大小便。

到这儿基本是大功告成,我们只剩下没有配置开机自启和一键启停重启,这玩意儿都是小事儿,百度吧,写不动了