首页 > 技术文章 > SQL Server同步MySql数据_使用ODBC配置链接服务器

sgxw 2022-02-25 16:50 原文

一、SQL SERVER链接MYSQL

1、在SQL SERVER服务器上安装MYSQL ODBC驱动;

下载地址:https://pan.baidu.com/s/1nDZp_baB0NgHpSU6GvJTXw?pwd=emne

2、安装好后,在管理工具-ODBC数据源-系统DSN-添加-选择 MYSQL ODBC 5.3 Unicode DRIVER-完成

会跳出来MYSQL连接参数

Data Source Name:数据源名称

Decription:描述,随便写

Server:MYSQL服务器的IP

Port:MYSQL的端口,默认的是3306.可以改的.

User:连接账号(在mysql上授权的账号,同时给予相应权限)

Password:密码

Database:选择链接的数据库


填好之后,点下test.成功了则会如图跳出提示框.

/*
删除链接服务器
Exec sp_droplinkedsrvlogin CloudMysql,NULL;


Exec sp_dropserver CloudMysql ;
*/


--在sql server创建链接服务器语句
EXEC master.dbo.sp_addlinkedserver @server = N'CloudMysql', @srvproduct=N'CloudMysql', @provider=N'MSDASQL', @datasrc=N'MySql_Link';

EXEC master.dbo.sp_addlinkedsrvlogin @rmtsrvname=N'CloudMysql',@useself=N'False',@locallogin=NULL,@rmtuser=N'root',@rmtpassword='*******';

-- 测试读取表

SELECT * FROM OPENQUERY(CloudMysql,'SELECT * FROM mysql_base_name.mysql_table_name') AS A

3 通过SQL Server操作MySQL

MySQL数据库test 中的数据表TestTable的结构如下:

 

操作该表的方法如下:

3.1 查询MySQL中的数据

select * from openquery(TestMySQL,'select * from test.TestTable');

3.2 向MySQL表中插入数据

insert into openquery(TestMySQL,'select * from test.TestTable')
select 1,'TestName';

3.3 删除MySQL表中的数据

delete from openquery(TestMySQL,'select * from test.TestTable');

3.4 修改MySQL表中的数据

update openquery(TestMySQL,'select * from test.TestTable')

set TestName='ABCDE' where TestID=1;

二、SQL SERVER链接SQL SERVER

1、 创建链接服务器到管理软件的SQL SERVER

EXEC sp_addlinkedserver @server='BaseServer', @srvproduct='',@provider='SQLOLEDB',@datasrc='10.10.6.216';

EXEC sp_addlinkedsrvlogin 'BaseServer','false', NULL,'sa','*****' ;

-- 删除链接服务器

-- Exec sp_droplinkedsrvlogin BaseServer,NULL;

-- Exec sp_dropserver BaseServer ;

————————————————

推荐阅读