SpringBoot项目连接Linux服务器数据库的两种方法

作者:Nicky2024.01.22 05:36浏览量:4

简介:本文将介绍如何在SpringBoot项目中连接Linux服务器上的数据库,包括通过Linux直接开放端口访问和通过SSH协议在本机进行访问。以MySQL为例,我们将详细解释这两种方法的实现过程。

千帆应用开发平台“智能体Pro”全新上线 限时免费体验

面向慢思考场景,支持低代码配置的方式创建“智能体Pro”应用

立即体验

在SpringBoot项目中连接Linux服务器上的数据库,通常有两种方法:一种是直接在Linux服务器上开放数据库端口,让SpringBoot项目通过网络直接连接;另一种是通过SSH协议在本机进行连接。下面我们将分别介绍这两种方法的实现过程。
方法一:Linux直接开放端口访问

  1. 配置Linux服务器
    首先,你需要在Linux服务器上安装和配置MySQL数据库。确保MySQL服务已经启动,并且可以在命令行中使用mysql -u root -p命令成功登录。
    接下来,你需要开放MySQL的默认端口(通常是3306)让外部网络可以访问。你可以使用iptables或者firewalld等工具来实现。例如,使用iptables命令开放3306端口:
    sudo iptables -A INPUT -p tcp --dport 3306 -j ACCEPT
    然后,你需要将这个规则保存,以便重启后仍然生效。具体保存规则的方法取决于你使用的Linux发行版。
  2. 修改SpringBoot项目配置
    在你的SpringBoot项目中,你需要修改application.properties或者application.yml文件中的数据库连接配置。将数据库的URL、用户名和密码修改为对应的Linux服务器信息。例如:
    spring.datasource.url=jdbc:mysql://<Linux服务器IP>:3306/yourdatabase
    spring.datasource.username=root
    spring.datasource.password=yourpassword
    确保将<Linux服务器IP>替换为实际的Linux服务器IP地址。
  3. 测试连接
    启动SpringBoot项目,尝试进行数据库操作,观察是否可以成功连接。如果出现连接失败的情况,可能是因为端口没有正确开放,或者网络防火墙阻止了连接。检查Linux服务器的防火墙设置和网络连接情况,确保没有阻止连接的规则。
    方法二:通过SSH协议在本机进行访问
  4. 安装SSH客户端
    在本地机器上安装SSH客户端,如OpenSSH。在大多数Linux发行版和MacOS上,OpenSSH已经预装。如果你使用的是Windows系统,你可以安装Git Bash或者Windows Subsystem for Linux (WSL)。
  5. 生成SSH密钥对
    在本地机器上生成一个SSH密钥对。你可以使用以下命令生成密钥对:
    ssh-keygen -t rsa
    按照提示进行操作,生成一对公钥和私钥文件。私钥文件应该保密,公钥文件可以公开分享。将公钥文件复制到Linux服务器上。你可以使用scp命令将公钥文件上传到Linux服务器的指定目录下,例如:
    scp ~/.ssh/id_rsa.pub <Linux服务器用户名>@<Linux服务器IP>:/path/to/destination
  6. 配置SSH免密码登录
    在Linux服务器上,将公钥文件添加到授权密钥文件中。打开终端,切换到公钥文件所在的目录,执行以下命令:
    对于旧版本的SSH(如SSH v1):
    cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
    对于新版本的SSH(如SSH v2):
    cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys2然后保存文件并退出。现在你应该可以通过SSH协议免密码登录到Linux服务器了。
  7. 修改SpringBoot项目配置
    在你的SpringBoot项目中,修改application.properties或者application.yml文件中的数据库连接配置。将数据库的URL、用户名和密码修改为对应的本地机器信息。例如:
    spring.datasource.url=jdbc:mysql://localhost:3306/yourdatabase(注意这里使用localhost表示本机)
    spring.datasource.username=root(注意这里使用root用户)
    spring.datasource.password=yourpassword(注意这里使用yourpassword作为密码)然后启动SpringBoot项目,尝试进行数据库操作,观察是否可以成功连接。如果连接失败,可能是因为SSH配置不正确或者网络问题。检查本地机器的网络设置和SSH
article bottom image

相关文章推荐

发表评论