我越来越喜欢 SQL Server Management Studio (ssms),我意识到它不是自然兼容的,但是有没有办法连接到 MySQL?也许使用 ODBC 连接?
我知道有很多 MySql 管理工具,但使用 SSMS 会更好。
谢谢您的帮助
答案1
做这帮助? :
在 SSMS 中为 MySQL 数据库创建链接服务器
- 从 mysql.com 下载 MySQL ODBC 驱动程序
在 SQL Server 所在的服务器上安装 MySQL ODBC 驱动程序 - 双击 Windows 安装程序文件并按照说明进行操作。
使用 MySQL ODBC 驱动程序创建 DSN 开始 -> 设置 -> 控制面板 -> 管理工具 -> 数据源 (ODBC)
- 单击系统 DSN 选项卡
- 单击“添加”
- 选择 MySQL ODBC 驱动程序
- 在“登录”选项卡上单击“完成”:
- 为您的 DSN 键入一个描述性名称。
- 在服务器文本框中输入服务器名称或 IP 地址。
- 在用户文本框中输入连接 MySQL 数据库所需的用户名。
- 在密码文本框中输入连接MySQL数据库所需的密码。
- 选择您想要启动的数据库。在“高级”选项卡上:在“标志 1”下:
- 选中不优化列宽。
- 检查返回匹配的行
- 勾选允许大结果
- 勾选使用压缩协议
- 检查 BIGINT 列是否为 INT
- 检查旗帜 2 下的安全:
- 勾选“连接时不提示”
- 检查标志 3 下的表名中的忽略 #:
- 检查 SQLDescribeCol 的返回表名称
- 现在检查禁用事务,单击“测试”按钮测试您的 DSN
在 SSMS 中为 MySQL 数据库创建链接服务器 SSMS(SQL Server Management Studio -> 展开服务器对象
- 右键单击“链接服务器”->在常规页面上选择“新建链接服务器”:
- 链接服务器:输入链接服务器的名称
- 服务器类型:选择其他数据源
- 提供程序:选择 Microsoft OLE DB Provider for ODBC Drivers
- 产品名称:MySQLDatabase 类型
- 数据源:在安全页面上输入您创建的 DSN 的名称
- 将登录名映射到远程用户并提供远程用户密码
- 单击本地服务器登录到远程服务器登录映射下的添加:
- 从下拉框中选择本地登录
- 输入远程用户的名称
- 输入远程用户的密码
更改提供程序 MSDASQL 的属性展开提供程序 -> 右键单击 MSDASQL -> 选择属性
- 启用嵌套查询
- 仅启用零级(这是关键)
- 启用允许进程内
- 启用支持“Like”运算符
更改 SQL Server 表面区域配置器中的功能设置
- 启用 OPENROWSET 和 OPENDATASOURCE 支持。
更改 SQL Server 表面区域配置中的服务和连接设置
- 通过 TCP/IP 和命名管道启用本地和远程连接
停止 SQL Server 和 SQL Server 代理
- 启动 SQL Server 和 SQL Server 代理
答案2
是的你可以。
- 下载 MySQL ODBC 驱动程序:https://dev.mysql.com/downloads/connector/odbc/并安装
- 转到 ODBC 数据源管理员 > 用户 DNS > 添加...,并填写所有字段的正确信息。然后测试连接是否正常
- 转到 ODBC 数据源管理员 > 系统 DNS > 添加...,并填写所有字段的正确信息。然后测试连接是否正常
- 在 SSMS 中,转到服务器对象 > 链接服务器 > 新建链接服务器...
- 常规设置下
- 在“安全”下选择“使用此安全上下文”,然后输入远程登录 MySQL 的用户和密码
- 在服务器选项下将 RPC 和 RPC Out 设置为 True
- 转到服务器对象 > 链接服务器 > 提供程序 > MSDASQL,然后启用:嵌套查询、仅限零级别、允许进程内、支持“Like”运算符
- 重新启动 SQL Server 和 SQL Server 代理
现在,您可以使用以下结构从 SSMS 查询 MySQL:
从 OPENQUERY(linked_server_name,'SELECT * FROM database_name.table_name') 中选择 *
或者简单来说:
SELECT * FROM linked_server_name...table_name