Idea连接远程云服务器上的MySQL,开放云服务器端口

1.开放云服务器的3306端口

(1)进入到云服务器的控制台

(2)点击使用的云服务器

(3)点击 配置安全组规则

(4)添加规则

(5)开放端口

2.创建可以远程访问的用户

2.1 创建可以远程访问的用户

(1)确保MySQL服务运行:systemctl status mysql

(2)登录MySQL客户端:mysql -root

(3)创建用户,赋予用户权限,刷新

sql 复制代码
#创建用户--该用户可以在远程访问
CREATE USER 'admin'@'%' IDENTIFIED BY 'admin';

#赋予用户权限
GRANT ALL PRIVILEGES ON *.* TO 'admin'@'%' WITH GRANT OPTION;

#刷新,用户权限生效
FLUSH PRIVILEGES;

2.2 把root用户改为可以远程访问

(1)查看root用户是否可以被远程访问

sql 复制代码
select user, host from mysql.user where user='root';


localhost:表示只能被本地机器访问,不能被远程访问

(2)把root用户改为可以远程访问

sql 复制代码
UPDATE mysql.user SET host='%' WHERE user='root'

(3)刷新(权限生效)

sql 复制代码
FLUSH PRIVILEGES;

3.设置MySQL配置文件

MySQL有两个主要的配置文件:

shell 复制代码
# 查看核心配置(如绑定地址、端口)
sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf

# 查看客户端配置(如字符集)
sudo vim /etc/mysql/conf.d/mysql.cnf

注意:我们配置的是下面的(msyql服务端的配置文件,我们远程访问的是mysqld--MySQL的服务端):

shell 复制代码
sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf

进入文件后找到bind-address并修改

shell 复制代码
bind-address            = 0.0.0.0

说明:127.0.0.1表示只能本地访问的MySQL服务,0.0.0.0表示任意的远程机器都可以访问。

最后重启MySQL服务:systemctl restart mysql

4.在Idea中连接MySQL服务

4.1在配置文件中连接

(1)在application.properties文件

java 复制代码
# 数据库连接配置

#如果MySQL下载在本地电脑上用下面的方式
#spring.datasource.url= jdbc:mysql://127.0.0.1:3306/mybatis_study?characterEncoding=utf8&useSSL=false

# MySQL在远程服务器上
spring.datasource.url= jdbc:mysql://x.x.x.x:3306/mybatis_study?characterEncoding=utf8&useSSL=false

#MySQL账号
spring.datasource.username= admin

#MySQL密码
spring.datasource.password= admin


spring.datasource.driver-class-name= com.mysql.cj.jdbc.Driver

(2)在application.yml文件

java 复制代码
# 数据库连接配置
spring:
  datasource:
    # 如果MySQL下载在本地电脑上用下面的方式
    # url: jdbc:mysql://127.0.0.1:3306/mybatis_study?characterEncoding=utf8&useSSL=false

    # MySQL在远程服务器上  注:x.x.x.x是你的公共ip
    url: jdbc:mysql://x.x.x.x:3306/mybatis_study?characterEncoding=utf8&useSSL=false
    username: admin
    password: admin
    driver-class-name: com.mysql.cj.jdbc.Driver

运行程序,然后写访问数据库的程序

4.2 使用插件连接

(1)点击Idea右边的插件:

(2)填写云服务器的公共IP和账号密码:

然后点击 ApplyOK

相关推荐
之歆3 小时前
Spring AI入门到实战到原理源码-MCP
java·人工智能·spring
Java.熵减码农3 小时前
解决Linux修改环境变量后导致登录循环进不去系统的问题
linux·运维·服务器
yangminlei3 小时前
Spring Boot3集成LiteFlow!轻松实现业务流程编排
java·spring boot·后端
计算机毕设VX:Fegn08953 小时前
计算机毕业设计|基于springboot + vue医院设备管理系统(源码+数据库+文档)
数据库·vue.js·spring boot·后端·课程设计
J_liaty3 小时前
Spring Boot整合Nacos:从入门到精通
java·spring boot·后端·nacos
明天好,会的3 小时前
分形生成实验(五):人机协同破局--30万token揭示Actix-web状态管理的微妙边界
运维·服务器·前端
Mr__Miss4 小时前
保持redis和数据库一致性(双写一致性)
数据库·redis·spring
面汤放盐4 小时前
后端系统设计文档模板
后端
daidaidaiyu4 小时前
Spring IOC 源码学习 一文学习完整的加载流程
java·spring
Knight_AL5 小时前
Spring 事务传播行为 + 事务失效原因 + 传播行为为什么不用其他模式
数据库·sql·spring