【GoLand教程】GoLand 使用 unix 套接字连接到 MySQL
- 仅限 Linux
- Junixsocket JAR 文件:github.com 上的 junixsocket 存储库
- GoLand 必须位于运行服务器的主机上(dev.mysql.com 上的MySQL 8.0 参考手册)
在 Unix 上,您可以使用两种不同的方式连接到 mysqld 服务器:Unix 套接字文件(例如/var /run /mysqld /mysqld.sock)或使用 TCP/IP(例如)。使用 Unix 套接字文件创建的连接比 TCP/IP 更快,但只能在连接到同一台计算机上的服务器时使用。当您使用 Unix 套接字文件时,您可以跳过连接字符串中的主机名和端口。127.0.0.1:3306
步骤 1. 找到一个 Unix 套接字文件
在命令行中的服务器主机上,运行以下命令:
mysql -u root -p -h 127.0.0.1 -e "select @@socket"
- 为您的用户输入密码,
root
然后按Enter。
步骤 2. 从命令行检查 Unix 套接字连接
- 在命令行中,运行以下命令:
mysql -u root -p -S /var/run/mysqld/mysql.sock
. - 为您的用户输入密码,
root
然后按Enter。
Step 3. 下载第三方库
Connector/J 驱动程序本身不支持使用 Unix 域套接字连接到 MySQL 服务器。要启用套接字连接,您需要下载第三方库。
- 从github.com 的 junixsocket 存储库下载最新版本(例如,junixsocket-dist-2.3.2-bin.tar.gz)。
提取下载的存档。您需要将lib目录中的以下文件添加到 GoLand 中的 MySQL 驱动程序中:
- junixsocket-mysql-2.3.2.jar
- junixsocket-native-common-2.3.2.jar,如果您有自定义架构,请尝试junixsocket-native-custom-2.3.2.jar
- junixsocket-core-2.3.2.jar
- junixsocket-common-2.3.2.jar
步骤 4. 在 GoLand 中配置 MySQL 驱动程序
- 在数据库工具窗口(查看 | 工具窗口 | 数据库)中,单击数据源属性图标。
- 在Drivers部分,单击MySQL驱动程序,然后单击Duplicate按钮。或者,按Ctrl+D。
- 更改重复驱动程序的名称(例如MySQL socket)。
- 在General选项卡上,单击Add按钮 ( ) 并选择Custom JARs。
在文件浏览器中,导航到包含第三方库的文件夹。按下Ctrl时,选择以下文件:
- junixsocket-mysql-2.3.2.jar
- junixsocket-native-common-2.3.2.jar,如果您有自定义架构,请尝试junixsocket-native-custom-2.3.2.jar
- junixsocket-core-2.3.2.jar
- junixsocket-common-2.3.2.jar
- 单击确定。
- 在Advanced选项卡上,找到socketFactory属性,双击Value单元格,然后将值更改为
org.newsclub.net.mysql.AFUNIXDatabaseSocketFactory
。
- 向下滚动到属性列表的末尾,双击<user defined>单元格并键入
junixsocket.file
。双击Value单元格并输入您的套接字文件的路径。
- 单击应用。
步骤 5. 创建到 MySQL 服务器的连接
- 在数据库工具窗口(查看 | 工具窗口 | 数据库)中,单击数据源属性图标。
- 在Data Sources and Drivers对话框中,单击Add图标 ( ) 并选择MySQL。
- 在数据源设置区域的底部,单击下载缺少的驱动程序文件链接。当您单击此链接时,GoLand 会下载与数据库交互所需的驱动程序。IDE 不包含捆绑的驱动程序,以使安装包更小,并使每个 IDE 版本的驱动程序版本保持最新。
如果您不想下载提供的驱动程序,可以为数据源指定驱动程序。
- 在“高级”选项卡上,在选项列表中找到
serverTimezone
参数。双击值单元格并输入您的服务器时区(例如,UTC
)。
- 单击常规选项卡。
- 从驱动程序列表中,选择您之前创建的驱动程序。
- 在用户和密码字段中,指定您的用户凭据。
- 要确保与数据源的连接成功,请单击测试连接链接。