目录
- ubuntu20使用apt安装mysql8
- 报错列表
- 参考链接
- 首先删除旧mysql
- 一、下载配置mysql8库索引
- 下载apt包
- 解压
- 包配置
- 更新apt库索引
- 二、下载安装mysql8
- 三、启动mysql服务
- 配置开机自启动,忽略
- 本地登录
- 远程登录
- 查看mysql的所有用户
- 使用客户端远程登陆
- 如果报错
- 完成
- 参考链接
ubuntu20使用apt安装mysql8
开发环境 ubuntu 20.4 + mysql8.0.41
报错列表
如果出现下面的报错,劝,别折腾了,按照我下面的方法来。
或者评论区留下出现的问题
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
或
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
或
ERROR 1045 (28000): Access denied for user ....
或
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
或
ERROR 1524 (HY000): Plugin 'auth_socket' is not loaded
或
ERROR 1045 (28000): Access denied for user 'debian-sys-maint'@'localhost' ...
或
其他下载安装登录的奇葩问题
参考链接
mysql官网手册
Ubuntu20彻底删除MySQL8
首先删除旧mysql
假如之前有下载mysql,需要完全删除
参考连接:Ubuntu20彻底删除MySQL8
然后继续以下步骤
一、下载配置mysql8库索引
下载apt包
从这个官方网址下载:MySQL :: Download MySQL APT Repository
从这个界面下载apt包
点击直接下载
然后将下载的文件传到ubuntu上
解压
dpkg -i mysql-apt-config_0.8.33-1_all.deb
#报错,需要管理员权限
dpkg: error: requested operation requires superuser privilege
#加上sudo
sudo dpkg -i mysql-apt-config_0.8.33-1_all.deb
包配置
解压完成会自动进入包配置
第一个选项是选择下载哪种mysql
第二个选项是是否下载连接器
选择第一个回车,这个是选择下载的mysql是那种的,选择第一个,回车会自动返回上一界面
是否选择下载连接器文件集合,选默认enabled
选择完成后选择ok出现下面界面就完成了配置
更新apt库索引
sudo apt-get update
会输出下面更新的库地址
二、下载安装mysql8
执行命令下载安装mysql
sudo apt-get install mysql-server -y
下载完了会出现一个给root用户创建密码的窗口,等下登录要用。
一个提醒
选择强密码还是以前的密码验证插件
选哪个都行,它推荐第一个,那就选第一个
到这就安装完了
三、启动mysql服务
sudo systemctl start mysql
配置开机自启动,忽略
下面这一步设置可忽略
systemctl enable mysql #设置自启动
systemctl list-unit-files|grep mysql #查看状态
本地登录
mysql -u root -p
到此就完成了。
远程登录
远程链接在ubuntu20中安装的mysql8
查看mysql的所有用户
select user,host,authentication_string,plugin from mysql.user;
发现host都是本地localhost的,所以需要创建一个新用户
# 注意这里的caching_sha2_password需要根据上面查询出来的plugin进行对应修改
#注意最后的 password 是密码,是给用户'root'@'%' 登录的
CREATE USER 'root'@'%' IDENTIFIED WITH 'caching_sha2_password' BY 'password';
#如果下载是和我一样的mysql版本应该都是 caching_sha2_password
#赋予所有权限,这个版本貌似不需要,忽略这一步
# GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
#刷新
FLUSH PRIVILEGES;# 如果某些参数设置错了,需要删除用户,命令如下,这里 'root'@'%' 是对应用户
DROP USER 'root'@'%';
使用客户端远程登陆
这里使用的是客户端工具,每个人用的不一样。略
如果报错
Public Key Retrieval is not allowed
那么修改如下配置
或者登录的时候添加以下登录参数
String url = "jdbc:mysql://localhost:3306/mydatabase?allowPublicKeyRetrieval=true&useSSL=false";
# 上面是参考连接,相应要修改,然后添加对应的参数
allowPublicKeyRetrieval=true&useSSL=false
完成
参考链接
mysql官网手册
Ubuntu20彻底删除MySQL8