环境

阿里云 ecs cenos 7 官网下载 mysql-8.1.0-linux-glibc2.28-x86_64.tar.xz

部署步骤

1、解压

官网下载的安装包后缀是xz,使用以下命令解压。

首先上传安装包到 /usr/local/mysql目录下并解压。

#先解压成tar压缩包
xz -d mysql-8.1.0-linux-glibc2.28-x86_64.tar.xz

#再执行tar命令解压成tar包
tar xf mysql-8.1.0-linux-glibc2.28-x86_64.tar

2、编译安装

安装依赖

yum install libaio

编辑配置文件 /etc/my.cnf,内容如下

[mysqld]
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
socket = /usr/local/mysql/mysql.sock
character-set-server=utf8
port = 3306
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
lower_case_table_names=1

[client]
socket = /usr/local/mysql/mysql.sock
default-character-set=utf8

创建用户和组

groupadd mysql
useradd -g mysql mysql
chown -R mysql.mysql /usr/local/mysql/

3、验证安装结果

初始化数据库,记住初始化成功后日志后面生成的密码

/usr/local/mysql/mysql-8.1.0-linux-glibc2.28-x86_64/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

创建mysql服务

#创建系统服务mysql
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
chmod +x /etc/init.d/mysql

#mysqld添加到系统服务
cp -a /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
chmod +x /etc/rc.d/init.d/mysqld    
chkconfig --add mysqld

#添加到开机启动

检查安装结果

# 一般 2/3/4状态是on表示没问题
chkconfig  --list mysqld

启动mysql服务

#启动服务
systemctl start mysql

#查看服务状态
systemctl status mysql

**4、配置环境变量/etc/profile

在文件最后添加配置

export PATH=$PATH:/usr/local/mysql/bin:/usr/local/mysql/lib
export PATH

配置生效

source /etc/profile

5、配置远程访问

命令行登录mysql服务 mysql -uroot -p,输入初始化生成的密码。

修改密码

#mysql 8以上使用新版本加密方式,如下修改的密码在Navicat登录不上,验证不支持,可使用下面命令进行修改。使用旧的加密方式对密码进行加密
ALTER USER 'root'@'localhost' IDENTIFIED BY 'your_new_password';

#旧加密方式加密密码
ALTER USER 'root'@'localhost' IDENTIFIED with mysql_native_password BY 'your_new_password';

6、创建指定用户并授权

创建一个新用户huxdiy

#huxdiy'@'% ,其中%表示如何IP都可以连接数据库,可以填写固定IP限制访问。
 CREATE USER 'huxdiy'@'%' IDENTIFIED with mysql_native_password  BY 'xxxxx';

授权

# *.*  授权表示全部给与权限,可以指定数据库访问权限
grant all on *.* to huxdiy;

#及时生效
flush privileges;