数据库开启ssl

数据库:阿里云rds 系统:centos

需要修改的:nacos连接+项目连接+本地navicat连接

重点:为了兼容本地和服务器,ssl证书路径由原来的绝对路径换成环境变量参数,所以有步骤4

文章目录

    • [步骤1 阿里云](#步骤1 阿里云)
    • [步骤2 navicat](#步骤2 navicat)
    • [步骤3 文件复制到服务器,打开读写权限](#步骤3 文件复制到服务器,打开读写权限)
    • [步骤4 配置环境变量](#步骤4 配置环境变量)
      • [4.1 Windows 本地电脑上配置环境变量](#4.1 Windows 本地电脑上配置环境变量)
      • [4.2 在 CentOS 服务器上配置环境变量](#4.2 在 CentOS 服务器上配置环境变量)
    • 修改nacos和项目的数据库连接

步骤1 阿里云

rds控制台,安全管理里打开ssl开关,打开强制使用密码,下载CA证书,解压拿到.pem后缀的文件

1.这里如果打开ssl失败,需要手动升级数据库小版本更新,会闪断数据库1s左右。

2.先不打开强制使用密码,可以让项目和nacos正常运行

编辑数据库连接,打开ssl选项卡,把pem文件放进【CA证书】那栏

步骤3 文件复制到服务器,打开读写权限

从堡垒机登录跳板机

------本地文件通过windterm等终端拖拽到跳板机

------跳板机scp命令复制到具体服务器

------给root用户文件夹和文件的读写权限

复制代码
[root@onvip-nginx ~]# scp /root/ApsaraDB-CA-Chain.pem root@uat.internal:/opt/mysql-ssl/
root@uat.internal's password: (这里输密码)
ApsaraDB-CA-Chain.pem                                100%  140KB  11.8MB/s   00:00   

步骤4 配置环境变量

4.1 Windows 本地电脑上配置环境变量

【我的电脑】,选择【属性】。点击【高级系统设置】

在【系统属性】窗口中,点【环境变量】按钮 点【新建系统变量】

变量名:MYSQL_SSL_CERT_PATH

变量值:具体路径

验证 echo %MYSQL_SSL_CERT_PATH%

4.2 在 CentOS 服务器上配置环境变量

复制代码
[root@xzdevlocaldomain xz-dev]# sudo vi /etc/profile

进入vi 最后一行增加:export MYSQL_SSL_CERT_PATH=/opt/mysql-ssl/ApsaraDB-CA-Chain.jks

[root@xzdevlocaldomain conf]# source /etc/profile
[root@xzdevlocaldomain conf]# echo $MYSQL_SSL_CERT_PATH
/opt/mysql-ssl/ApsaraDB-CA-Chain.jks

修改nacos和项目的数据库连接

都改application.properties文件

找nacos配置文件位置/root/nacos/conf,找到文件里面的Connect URL of DB修改链接

复制代码
[root@uat-new logs]# ps -ef | grep nacos
root        5712   1  1 Aug22 ?        08:34:53 /usr/lib/jvm/jdk-1.8-oracle-x64/bin/java -Xms512m -Xmx512m -Xmn256m -Dnacos.standalone=true -Dnacos.member.list= -Djava.ext.dirs=/usr/lib/jvm/jdk-1.8-oracle-x64/jre/lib/ext:/usr/lib/jvm/jdk-1.8-oracle-x64/lib/ext -Xloggc:/opt/nacos/logs/nacos_gc.log -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+PrintGCTimeStamps -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=10 -XX:GCLogFileSize=100M -Dloader.path=/opt/nacos/plugins/health,/opt/nacos/plugins/cmdb -Dnacos.home=/opt/nacos -jar /opt/nacos/target/nacos-server.jar --spring.config.additional-location=file:/opt/nacos/conf/ --logging.config=/opt/nacos/conf/nacos-logback.xml --server.max-http-header-size=524288 nacos.nacos
root     1834006 1833954  0 15:32 pts/1    00:00:00 grep --color=auto nacos
[root@uat-new logs]# cd /opt/nacos/conf
[root@xzdevlocaldomain conf]# vim application.properties
[root@xzdevlocaldomain nacos]# kill 5712
[root@xzdevlocaldomain nacos]# cd bin/
[root@xzdevlocaldomain bin]# ls
logs  nohup.out  shutdown.cmd  shutdown.sh  start-standalone  startup.cmd  startup.sh  work
[root@xzdevlocaldomain bin]# sh startup.sh -m standalone
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.362.b08-3.el8.x86_64/bin/java  -Xms512m -Xmx512m -Xmn256m -Dnacos.standalone=true -Dnacos.member.list= -Djava.ext.dirs=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.362.b08-3.el8.x86_64/jre/lib/ext:/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.362.b08-3.el8.x86_64/lib/ext -Xloggc:/root/nacos/logs/nacos_gc.log -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+PrintGCTimeStamps -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=10 -XX:GCLogFileSize=100M -Dloader.path=/root/nacos/plugins/health,/root/nacos/plugins/cmdb -Dnacos.home=/root/nacos -jar /root/nacos/target/nacos-server.jar  --spring.config.additional-location=file:/root/nacos/conf/ --logging.config=/root/nacos/conf/nacos-logback.xml --server.max-http-header-size=524288
nacos is starting with standalone
nacos is starting,you can check the /root/nacos/logs/start.out
命令 用法
useSSL=true 启用 SSL 连接
requireSSL=true 强制要求客户端使用 SSL
verifyServerCertificate=true 验证服务器证书
enabledTLSProtocols=TLSv1.2 指定使用的 TLS 协议版本
trustCertificateKeyStoreUrl 指定 CA 证书路径(这里把绝对路径换成了环境变量)

正常绝对路径增加以下后缀:

&useSSL=true&requireSSL=true&verifyServerCertificate=true&enabledTLSProtocols=TLSv1.2&trustCertificateKeyStoreUrl=file:///opt/mysql-ssl/ApsaraDB-CA-Chain.pem

环境变量优化版本:

&useSSL=true&requireSSL=true&verifyServerCertificate=true&enabledTLSProtocols=TLSv1.2&trustCertificateKeyStoreUrl=${MYSQL_SSL_CERT_PATH}

相关推荐
炬火初现28 分钟前
SQL语句——高级字符串函数 / 正则表达式 / 子句
数据库·sql
TTGGGFF42 分钟前
云端服务器使用指南:利用Python操作mysql数据库
服务器·数据库·python
编程充电站pro1 小时前
SQL 性能优化:为什么少用函数在 WHERE 条件中?
数据库·sql
无敌最俊朗@1 小时前
通过Ubuntu和i.MX 6ULL开发板实现网络共享
服务器·数据库·ubuntu
TDengine (老段)2 小时前
TDengine 时序函数 DERIVATIVE 用户手册
大数据·数据库·sql·物联网·时序数据库·iot·tdengine
TDengine (老段)2 小时前
TDengine 时序函数 STATEDURATION 用户手册
大数据·数据库·sql·物联网·时序数据库·iot·tdengine
凯子坚持 c2 小时前
2025年大模型服务性能深度解析:从清华评测报告看蓝耘元生代MaaS平台的综合实力
大数据·数据库·人工智能
长安城没有风2 小时前
从入门到精通【Redis】理解Redis事务
数据库·redis·缓存
小园子的小菜2 小时前
MySQL 查询与更新语句执行过程深度解析:从原理到实践
数据库·mysql
老华带你飞3 小时前
学生信息管理系统|基于Springboot的学生信息管理系统设计与实现(源码+数据库+文档)
java·数据库·spring boot·后端·论文·毕设·学生信息管理系统