1.下载Linux-Generic版本: https://dev.mysql.com/downloads/mysql/
解压到/usr/local/mysql, 在mysql目录里创建data目录, 目录结构为: /usr/local/mysql/data, 其中data和bin同级目录
2.创建用户和组,并改变mysql目录的拥有者:
groupadd mysql
useradd -r -g mysql mysql
chown -R mysql:mysql /usr/local/mysql
3.Linux下mysql配置文件的默认位置在/etc/my.cnf, 建立文件, 写如下信息
[mysqld]
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
#mysql8.0默认采用utf8mb4编码格式, 其是utf8的超集, 具体可以baidu, 所以这里就不需要加下边删除线的内容了. 反正加了也报错.
#character-set-server=utf8
#collation-server=utf8_general_ci
#MySQL 8.0使用的密码验证方案是:caching_sha2_password, 旧版是mysql_native_password, 如果你的某些client认证不通过, 可以加这段话, 切换回原来的验证方案
default_authentication_plugin=mysql_native_password
4.初始化数据库, 以前有mysql_install_db, 现在使用:
./mysqld --initialize --user=mysql
随后会生成一个root临时密码
5.启动mysql: 也可后台运行, 即在命令后加 &
./mysqld --user=mysql
注意:./mysqld_safe --user=mysql的启动方式会读安全目录下的my.cnf
6.使用第4步中生成的临时密码登录
./mysql -uroot -p 回车, 输入临时密码
7.修改密码, 这里和5.*的版本有错不同.
alter user 'root'@'localhost' identified by '1111';
8.MySQL 8.0的创建用户及授权方式同以前版本有很大不同.
创建用户及修改权限: (这里又和旧版本的有不同,旧版本可以直接通过grant生成)
create user `root`@`%` identified by '1111';
增加grant权限, 便于在其它机器上进行访问. 例子中我是直接以root演示, 大家在开发中不要给root开放这么大权限.
至此, MySQL 8.0的安装配置就完成了.
9.另外, 在java端进行测试.需要注意以下几点:
(1)需要使用connector 8.0的jar
<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.11</version>
</dependency>
(2)JDBC_DRIVER = "com.mysql.cj.jdbc.Driver".
之前在旧版里, 我们一直用的都是:com.mysql.jdbc.Driver, 现在终于变了.
(3)url之后加?serverTimezone=Asia/Shanghai&useSSL=false
我在测试的时候, 报了一些问题, 包括时区的, ssl的, 这里贴出来, 具体的错误没有记录, 大家可以模拟一下.