阿里云服务器(Ubuntu22)上的MySQL8数据库下载,安装和远程连接

最近阿里云centos主机到期了改为使用Ubuntu操作系统,在上面安装mysql并远程连接出现了一系列问题并解决。

之前在centos系统上下载mysql8的教程如下:
阿里云服务器(centos7)上的MySQL8数据库下载,安装和远程连接

主机操作系统类型:

1.安装

bash 复制代码
#更新
apt-get update

#安装mysqlserver
apt-get install mysql-server

#使得mysql可以远程登陆
vim /etc/mysql/mysql.conf.d/mysqld.cnf
#注释掉这一行
#bind-address = 127.0.0.1

#重启mysql
service mysql restart;

2.修改root密码和能够远程连接

bash 复制代码
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'P@ssw0rd'; 

mysql -u root -p (mysql8只能用两句执行了)  
CREATE USER 'root'@'%' IDENTIFIED BY 'P@ssw0rd';  
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;

3.问题

ERROR 1698 (28000): Access denied for user 'root'@'localhost'。

原因:MySQL默认使用了UNIX auth_socket plugin插件。简单来说这意味着当db_users使用数据库时,将会通过系统用户认证表进行认证。你可以通过下面的命令看看你的root用户是否设置成了这样:

就像你在查询语句中看到的那样,root用户在使用auth_socket插件。

设置你的root用户使用mysql_native_password插件 。

bash 复制代码
UPDATE user SET plugin='mysql_native_password' WHERE User='root';

但是这样会导致root需要重新设置密码;

bash 复制代码
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'P@ssw0rd'; 
相关推荐
l1t3 小时前
DeepSeek总结的 pg_regresql插件:真正可移植的 PostgreSQL 统计信息
数据库·postgresql
oradh3 小时前
Oracle 11.2.0.1版本升级至11.2.0.4_单机环境
数据库·oracle·oracle11g·oracle升级
l1t3 小时前
用docker安装测试crate数据库
数据库·docker·容器·cratedb
anzhxu3 小时前
QT数据库(三):QSqlQuery使用
数据库·qt·oracle
身如柳絮随风扬3 小时前
MySQL核心知识
数据库·mysql
德彪稳坐倒骑驴3 小时前
Oracle 11g安装
数据库·oracle
韩立学长3 小时前
Springboot校园跑腿业务系统0b7amk02(程序、源码、数据库、调试部署方案及开发环境)系统界面展示及获取方式置于文档末尾,可供参考。
数据库·spring boot·后端
阿贵---3 小时前
使用XGBoost赢得Kaggle比赛
jvm·数据库·python
想七想八不如114083 小时前
数据库--样题复习
数据库·sql·oracle
551只玄猫3 小时前
【数据库原理 实验报告1】创建和管理数据库
数据库·sql·学习·mysql·课程设计·实验报告·数据库原理