最近自己做了个web,上次写后端代码还是实习的时候,一晃过去了3年,技术框架也大变,已经不再是万年的
java 8 + sprintboot 2 + mysql 5.7
。这篇文章记录一下,这个过程中使用mysql 8
遇到的不一样的地方。
1. Centos安装MySQL
(1) 版本
Centos: 8
MySQL: 8.4.4 LTS
(2) 安装
查看系统环境: 使用 lsb_release -a
命令查看Linux系统版本,便于下载MySQL安装包时选择对应的版本。
下载安装包: https://dev.mysql.com/downloads/mysql/
上传至服务器并解压;
查看服务器是否已安装MySQL和MariaDB: yum list installed | grep mariadb && yum list installed | grep mysql
(如有,则yum remove
卸载)
按顺序安装以下文件:
rpm -ivh mysql-community-common-8.0.29-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-plugins-8.0.29-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-8.0.29-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-compat-8.0.29-1.el7.x86_64.rpm
rpm -ivh mysql-community-devel-8.0.29-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-8.0.29-1.el7.x86_64.rpm
rpm -ivh mysql-community-icu-data-files-8.0.29-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-8.0.29-1.el7.x86_64.rpm
如果因缺少依赖安装失败,则安装对应依赖即可,如yum install openssl-devel
初始化MySQL: mysqld --initialize --user=mysql
(这里是使用mysql用户初始化,也可以使用其他用户)
修改配置文件: 配置文件是 /etc/my.cnf
,可以按照需求修改其中的 port、dataDir、logDir等。
查看初始密码: grep "password" /var/log/mysqld.log
启动MySQL服务: systemctl start mysqld
使用初始密码连接MySQL,并修改初始密码: alter user 'root'@'localhost' identified by '新密码';
2. 创建用户和赋权
在MySQL 5.7
,可以直接使用 grant
命令,创建用户和赋权都能完成:
grant select on test.* to 'test'@'localhost' identified by 'abcdefghijk';
在mysql 8
中,需要先创建用户,才能赋权:
create user 'test'@'localhost' identified with mysql_native_password by 'abcdefghijk';
grant select on test.* to 'test'@'localhost';
转载请注明来源,欢迎指出错误或表达不够清晰之处。可以在评论区留言,也可以邮件至 hellozhugj@gmail.com