sql >> データベース >  >> RDS >> Mysql

Azure-外部MySQLデータベースに接続しようとしたときにアクセス許可が拒否されました

    問題を再現するのに疲れましたが、失敗しました。

    ここでは、Java spring-bootを作成しようとしました Azure MySQL Databaseとの接続をテストするプロジェクト 。

    私のコードの概要:

        private static String hostName = "<your host name>";
        private static String dbName = "sys";
        private static String user = "<user name>";
        private static String password = "password";
        private static String portNumber = "3306";
    
        @RequestMapping("/hello")
        public String index() throws SQLException {
            Connection conn = null;
            try {
                Class.forName("com.mysql.cj.jdbc.Driver");
            } catch (ClassNotFoundException e1) {
                e1.printStackTrace();
            }
            try {
                String url = "jdbc:mysql://"+hostName+":"+portNumber+"/"+dbName+"?verifyServerCertificate=true&useSSL=true&requireSSL=false&serverTimezone=UTC";
                conn = DriverManager.getConnection(url, user, password);
    
            } catch (SQLException e) {
                System.out.println("error!!!!");
                System.out.println(e.getMessage());
                e.printStackTrace();
                return e.getMessage();
            }
            return conn.getCatalog();
        }
    

    私のweb.configファイル:

    <?xml version="1.0" encoding="UTF-8"?>
    <configuration>
      <system.webServer>
        <handlers>
          <add name="httpPlatformHandler" path="*" verb="*" modules="httpPlatformHandler" resourceType="Unspecified" />
        </handlers>
        <httpPlatform processPath="%JAVA_HOME%\bin\java.exe"
            arguments="-Djava.net.preferIPv4Stack=true -Dserver.port=%HTTP_PLATFORM_PORT% -jar &quot;%HOME%\site\wwwroot\demo-0.0.1-SNAPSHOT.jar&quot;">
        </httpPlatform>
      </system.webServer>
    </configuration>
    

    データベースに接続できない場合は、次のようにポイントを確認できます。

    1.SSLパラメータの設定をお見逃しなく。

    2.白のIP addressを設定してください 紺碧のWebアプリの。

    3.-Djava.net.preferIPv4Stack=true web.configでの設定 。

    このスレッドから詳細を見つけることができます: JavaMail APIからiMailへ--java.net.SocketException:アクセスが拒否されました:接続

    お役に立てば幸いです。



    1. Access2016のデザインビューで単純な選択クエリを作成する方法

    2. MySQLのVARCHARとTEXTの違い

    3. SQLiteの名前変更列

    4. JavaFXテーブルを使用してデータを整理する