Membuat koneksi menggunakan Konektor Cloud SQL Java
Tetap teratur dengan koleksi
Simpan dan kategorikan konten berdasarkan preferensi Anda.
Buka koneksi ke Cloud SQL untuk MySQL menggunakan Cloud SQL Java Connector.
Mempelajari lebih lanjut
Untuk dokumentasi mendetail yang menyertakan contoh kode ini, lihat referensi berikut:
Contoh kode
Kecuali dinyatakan lain, konten di halaman ini dilisensikan berdasarkan Lisensi Creative Commons Attribution 4.0, sedangkan contoh kode dilisensikan berdasarkan Lisensi Apache 2.0. Untuk mengetahui informasi selengkapnya, lihat Kebijakan Situs Google Developers. Java adalah merek dagang terdaftar dari Oracle dan/atau afiliasinya.
[[["Mudah dipahami","easyToUnderstand","thumb-up"],["Memecahkan masalah saya","solvedMyProblem","thumb-up"],["Lainnya","otherUp","thumb-up"]],[["Sulit dipahami","hardToUnderstand","thumb-down"],["Informasi atau kode contoh salah","incorrectInformationOrSampleCode","thumb-down"],["Informasi/contoh yang saya butuhkan tidak ada","missingTheInformationSamplesINeed","thumb-down"],["Masalah terjemahan","translationIssue","thumb-down"],["Lainnya","otherDown","thumb-down"]],[],[],[],null,["# Create a connection using the Cloud SQL Java Connector\n\nOpen a connection to Cloud SQL for MySQL by using the Cloud SQL Java Connector.\n\nExplore further\n---------------\n\n\nFor detailed documentation that includes this code sample, see the following:\n\n- [Connect from App Engine flexible environment](/sql/docs/mysql/connect-app-engine-flexible)\n- [Connect from App Engine standard environment](/sql/docs/mysql/connect-app-engine-standard)\n- [Connect from Cloud Run](/sql/docs/mysql/connect-run)\n- [Connect from Cloud Run functions](/sql/docs/mysql/connect-functions)\n- [Connect using Cloud SQL Language Connectors](/sql/docs/mysql/connect-connectors)\n\nCode sample\n-----------\n\n### Java\n\n\nTo authenticate to Cloud SQL for MySQL, set up Application Default Credentials.\nFor more information, see\n\n[Set up authentication for a local development environment](/docs/authentication/set-up-adc-local-dev-environment).\n\n\n import com.zaxxer.hikari.HikariConfig;\n import com.zaxxer.hikari.HikariDataSource;\n import javax.sql.DataSource;\n\n public class ConnectorConnectionPoolFactory extends ConnectionPoolFactory {\n\n // Note: Saving credentials in environment variables is convenient, but not\n // secure - consider a more secure solution such as\n // Cloud Secret Manager (https://cloud.google.com/secret-manager) to help\n // keep secrets safe.\n private static final String INSTANCE_CONNECTION_NAME =\n System.getenv(\"INSTANCE_CONNECTION_NAME\");\n private static final String INSTANCE_UNIX_SOCKET = System.getenv(\"INSTANCE_UNIX_SOCKET\");\n private static final String DB_USER = System.getenv(\"DB_USER\");\n private static final String DB_PASS = System.getenv(\"DB_PASS\");\n private static final String DB_NAME = System.getenv(\"DB_NAME\");\n\n public static DataSource createConnectionPool() {\n // The configuration object specifies behaviors for the connection pool.\n HikariConfig config = new HikariConfig();\n\n // The following URL is equivalent to setting the config options below:\n // jdbc:mysql:///\u003cDB_NAME\u003e?cloudSqlInstance=\u003cINSTANCE_CONNECTION_NAME\u003e&\n // socketFactory=com.google.cloud.sql.mysql.SocketFactory&user=\u003cDB_USER\u003e&password=\u003cDB_PASS\u003e\n // See the link below for more info on building a JDBC URL for the Cloud SQL JDBC Socket Factory\n // https://github.com/GoogleCloudPlatform/cloud-sql-jdbc-socket-factory#creating-the-jdbc-url\n\n // Configure which instance and what database user to connect with.\n config.setJdbcUrl(String.format(\"jdbc:mysql:///%s\", DB_NAME));\n config.setUsername(DB_USER); // e.g. \"root\", \"mysql\"\n config.setPassword(DB_PASS); // e.g. \"my-password\"\n\n config.addDataSourceProperty(\"socketFactory\", \"com.google.cloud.sql.mysql.SocketFactory\");\n config.addDataSourceProperty(\"cloudSqlInstance\", INSTANCE_CONNECTION_NAME);\n\n\n // The ipTypes argument can be used to specify a comma delimited list of preferred IP types\n // for connecting to a Cloud SQL instance. The argument ipTypes=PRIVATE will force the\n // SocketFactory to connect with an instance's associated private IP.\n config.addDataSourceProperty(\"ipTypes\", \"PUBLIC,PRIVATE\");\n\n // cloudSqlRefreshStrategy set to \"lazy\" is used to perform a\n // refresh when needed, rather than on a scheduled interval.\n // This is recommended for serverless environments to\n // avoid background refreshes from throttling CPU.\n config.addDataSourceProperty(\"cloudSqlRefreshStrategy\", \"lazy\");\n\n // ... Specify additional connection properties here.\n // ...\n\n // Initialize the connection pool using the configuration object.\n return new HikariDataSource(config);\n }\n }\n\nWhat's next\n-----------\n\n\nTo search and filter code samples for other Google Cloud products, see the\n[Google Cloud sample browser](/docs/samples?product=cloud_sql_mysql)."]]