代码之家  ›  专栏  ›  技术社区  ›  Basil Bourque

在Digital Ocean管理的数据库服务器上使用TLS加密连接MySQL时,将ca-certificate.crt文件放在哪里

  •  0
  • Basil Bourque  · 技术社区  · 3 年前

    我正在尝试使用JDBC 4.2+,通过配置 DataSource 对象通过 com.mysql.cj.jdbc.MysqlDataSource 班使用IntelliJ 2023.1在macOS Ventura上开发。

    我在 Digital Ocean managed database 服务

    数字海洋配置页面指示 SSL ( TLS ,实际上,我认为)是连接数据库服务器所必需的。同一个配置页面提供了 ca-certificate.crt 文件我确实下载了那个文件。

    我该如何处理下载的 ca证书.crt 文件

    这个 How to Connect to MySQL Database Clusters Digital Ocean的页面告诉我下载文件,但没有说明如何处理。

    这个 Configuring MySQL to Use Encrypted Connections MySQL网站上的页面上说了很多事情,但没有说明如何处理这个文件。


    private DataSource fetchDataSource ( )
    {
        MysqlDataSource ds = null;
        try
        {
            ds = new MysqlDataSource();
    
            // Server
            ds.setURL( "jdbc:mysql://db-mysql-nyc1-whatever.db.ondigitalocean.com:25000/defaultdb" );
            ds.setRequireSSL( true );
    
            // User
            ds.setUser( "doadmin" );
            ds.setPassword( "tiger" );
    
            return ds;  // Happy path.
        }
        catch ( SQLException e )
        {
            e.printStackTrace();
        }
        throw new IllegalStateException( "Failed to establish a JDBC DataSource. Msg # 3dfbbc6a-41d4-455d-9b6c-addf433522e5." );
    }
    
    0 回复  |  直到 3 年前