gpt4 book ai didi

mysql - 通过 SSH 的 MySQL 的 SlashDB 连接字符串

转载 作者:行者123 更新时间:2023-11-28 23:35:16 25 4
gpt4 key购买 nike

我正在尝试让我的 SlashDB REST API 查询 MySQL 数据库,它必须通过 SSH 连接到该数据库。

连接字符串没有成功,我不能说我很惊讶,因为 SlashDB 在其模板中有一个地方用于 DB 用户名和密码,但没有用于 SSH/OS 用户名和密码的选项。

wizard

如何调整此示例字符串以包含必要和充分的详细信息?

8.8.8.8:3306/somename

这与以下 JSON 相关联(请注意,您不能直接编辑 JSON):

{
"db_encoding": "utf-8",
"owners": [
"admin",
"user",
"root"
],
"execute": [
"admin",
"user",
"root"
],
"creator": "admin",
"read": [
"admin",
"user",
"root"
],
"db_type": "mysql",
"autoload": true,
"write": [
"admin",
"user",
"root"
],
"connect_status": "Disconnected",
"connection": "8.8.8.8:3306/somename",
"sysuser": {
"dbuser": "user",
"dbpass": "pw"
},
"db_schema": "somename",
"offline": true,
"alternate_key": {},
"desc": "blah blah blah"
}

因为您可以直接编辑连接字符串,所以我尝试在前面添加 user@ 但没有帮助。

最佳答案

SlashDB 没有内置到 MySQL 的 SSH 连接。但是,有一个变通办法。

  1. 建立从 SlashDB 主机到数据库主机的 SSH 隧道。我们在此示例中使用本地端口 3307。

    ssh -f user@XX.XX.XX.XX -L 3307:mysql1.example.com:3306 -N

  2. 在 GUI 中配置连接字符串如下:

    • 数据库主机:localhost
    • 数据库端口:3307
    • 其他参数同前

另请参阅:MySQL connection over SSH tunnel - how to specify other MySQL server?

话虽如此,通常避免公开 MySQL 服务器但允许公开 REST API 的模式是将 SlashDB 安装在与数据库相同的子网中。然后在防火墙中为 SlashDB 主机打开 80 和 443 端口。这也确保了 SlashDB 到 MySQL 连接的最大性能。

关于mysql - 通过 SSH 的 MySQL 的 SlashDB 连接字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35901319/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com