在Linux上安装 MySQL 8.0.11
文章目录
一、安装过程
1. 下载安装包
MySQL最新下载地址:https://dev.mysql.com/downloads/mysql/
选择的是Linux 64位通用的二级制版本,这样不在需要进行编译安装,系统安装依赖库后就可以直接使用。
2. 安装依赖库
官方说要安装libaio,但实际如果你安装libaio库的话不行,还需安装numactl库,如下
yum install numactl
yum install libaio
3. 解压软件包到系统
解压之后将软件包移动到系统中的/usr/local目录,并命名为mysql
tar -zxvf mysql-8.0.11-linux-glibc2.12-x86_64.tar.gz
mv mysql-8.0.11-linux-glibc2.12-x86_64 /usr/local/mysql
4. 添加用户、设置权限
groupadd mysql
useradd -r -g mysql -s /bin/false mysql
cd /usr/local
cd mysql
mkdir mysql-files
chown mysql:mysql mysql-files
chmod 750 mysql-files
5. 初始化数据库
bin/mysqld --initialize --user=mysql
可以看到系统随机给root用户分配了一个密码,如图所示,这个密码要记住,想要自定义过后可以再改
6. 安装SSL服务
执行安装命令之前先安装openssl,不然会报错
yum install openssl
bin/mysql_ssl_rsa_setup
7. 复制服务文件
cp support-files/mysql.server /etc/init.d/mysql.server
二、安装过程
1.开启服务
&是后台运行的意思,执行命令之后,终端会卡在一个位置,再按一下Enter即可
bin/mysqld_safe --user=mysql &
2. 使用用户root登录
使用刚才随机生成的密码,即可登陆数据库
bin/mysql -uroot -p
3. 更改root用户密码
第一次使用随机登录并不能使用,因此我们需要更改密码,如下
(1). 方案一:限制本地登录
ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';
flush privileges;
(2). 方案二:可以任意IP与第三方客户端登录
ALTER USER 'root'@'localhost' IDENTIFIED BY '密码' PASSWORD EXPIRE NEVER; #修改root的密码与加密方式
use mysql; #切换到mysql库
update user set host='%' where user = 'root'; #更改可以登录的IP为任意IP
flush privileges; #刷新权限
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '密码'; #再次更改root用户密码,使其可以在任意IP访问
flush privileges; #刷新权限
4. 新增用户赋权
#新增用户
create user 'ty_project'@'%' IDENTIFIED by 'tyyl@@123';
#赋权
grant SELECt on ty_jygc_db.* to 'ty_project'@'%';
#更新密码方式
ALTER USER 'ty_project'@'%' IDENTIFIED WITH mysql_native_password BY 'tyyl@@123';
#刷新权限
flush privileges;
5.开放端口
#查询是否开放3306端口
firewall-cmd --query-port=3306/tcp
#开放端口
firewall-cmd --permanent --add-port=3306/tcp
#重新加载
firewall-cmd --reload