|
Inicio → WINDEV 25 → WX - Conectar Microsoft Sql Server Local com Linkdb em um MySql Remoto e executar Procedures, Views, Select, Updates e Deletes |
WX - Conectar Microsoft Sql Server Local com Linkdb em um MySql Remoto e executar Procedures, Views, Select, Updates e Deletes |
Iniciado por adrianoboller, jun., 08 2015 7:19 PM - 15 respostas |
| |
| | | |
|
| |
Membro registado 3.659 mensagems Popularité : +175 (223 votes) |
|
Publicado em junho, 08 2015 - 7:19 PM |
Olá Prezados Amigos,
Tema de Hoje: Conectar Microsoft Sql Server Local com Linkdb em um MySql Remoto e executar Procedures, Views, Select, Updates e Deletes com a plataforma PcSoft. Nesse passo a passo vou passar todos os detalhes de como criar esse procedimento.
Passos:
1o. Ter um servidor Windows Server com Microsoft Sql Server instalado
2o. Ter sua base criada nesse servidor local
3o. Ter outro servidor na rede ou remoto com Windows Server, MySql Free instalado (versão 5.3.4)
4o. Ter sua base criada nesse servidor remoto
5o. Ter acesso via rede ao servidor remoto com mysql com ip fixo ou dns conhecido.
6o. Instalar no servidor local que tem o Ms Sql server instaldo e rodando o Driver ODBC do MySql Free, o endereço para Download é esse aqui abaixo (Deve ter uma conta de acesso da Oracle para poder baixar, sempre use instaladores dos sites oficiais para evitar virus ou surpresas indesejadas):
http://dev.mysql.com/downloads/connector/odbc/
|
| |
| |
| | | |
|
| | |
| |
Membro registado 3.659 mensagems Popularité : +175 (223 votes) |
|
Publicado em junho, 08 2015 - 8:19 PM |
7o. Acessar o painel de controle do computador onde se encontra o MsSQL Server instalado localmente
8o. Clicar na opção: Ferramentas Administrativas
9o. Em: "Origens de Dados ODBC 32bits ou 64bits" , verifique qual a versão do Windows Server que esta instalado se é 32bits ou 64bits para instalar a versão correta.
10o. Crie na segunda GUIA do ODBC "DSN SYSTEM" ou "DNS de Sistema" o Alias de acesso a base de dados remota do MySql, conforme imabem abaixo:
|
| |
| |
| | | |
|
| | |
| |
Membro registado 3.659 mensagems Popularité : +175 (223 votes) |
|
Publicado em junho, 08 2015 - 8:23 PM |
Em Details >>
No Botão: "TEST"
|
| |
| |
| | | |
|
| | |
| |
Membro registado 3.659 mensagems Popularité : +175 (223 votes) |
|
Publicado em junho, 08 2015 - 8:31 PM |
11o. No Microsoft SQL Management Studio
Localize na ramificação do Object Explorer: [+] Server Objects
Click com o botao direito do mouse em: [+] Linked Servers
|
| |
| |
| | | |
|
| | |
| |
Membro registado 3.659 mensagems Popularité : +175 (223 votes) |
|
Publicado em junho, 08 2015 - 8:56 PM |
12o. Escolha da imagem acima a opção: New Linked Server... Defina os seguintes dados da conexão tendo esses em mãos: Exemplo DataSource: basedados_xarope; mysql server = 177.1.7.18; Porta = 3306; data base = dbtesteconnect_mysql; user = xarope; pass = xarope
|
| |
| |
| | | |
|
| | |
| |
Membro registado 3.659 mensagems Popularité : +175 (223 votes) |
|
Publicado em junho, 08 2015 - 9:16 PM |
Na Tela: Linked Server Properties
Exemplo de Provider String:
DRIVER={MySQL ODBC 5.1 Driver}; SERVER=177.1.7.18; PORT=3306; DATABASE=dbtesteconnect_mysql; USER=xarope; PASSWORD=xarope; OPTION=3; |
| |
| |
| | | |
|
| | |
| |
Membro registado 3.659 mensagems Popularité : +175 (223 votes) |
|
Publicado em junho, 08 2015 - 9:50 PM |
USE [master] GO
/ Object: LinkedServer [DB_SPEEDTAXI] Script Date: 08/06/2015 13:13:08 /
EXEC master.dbo.sp_addlinkedserver @server = N'basedados_xarope', @srvproduct=N'MySQL', @provider=N'MSDASQL', @datasrc=N'basedados_xarope', @provstr=N'DRIVER={MySQL ODBC 5.1 Driver}; SERVER=177.1.7.18; PORT=3306; DATABASE=dbtesteconnect_mysql; USER=xarope; PASSWORD=xarope; OPTION=3;'
/ For security reasons the linked server remote logins password is changed with ######## /
EXEC master.dbo.sp_addlinkedsrvlogin @rmtsrvname=N'basedados_xarope',@useself=N'True',@locallogin=NULL,@rmtuser=NULL,@rmtpassword=NULL
GO
EXEC master.dbo.sp_serveroption @server=N'Dbasedados_xarope', @optname=N'collation compatible', @optvalue=N'false' GO
EXEC master.dbo.sp_serveroption @server=N'basedados_xarope', @optname=N'data access', @optvalue=N'true' GO
EXEC master.dbo.sp_serveroption @server=N'Dbasedados_xarope', @optname=N'dist', @optvalue=N'false' GO
EXEC master.dbo.sp_serveroption @server=N'basedados_xarope', @optname=N'pub', @optvalue=N'false' GO
EXEC master.dbo.sp_serveroption @server=N'basedados_xarope', @optname=N'rpc', @optvalue=N'false' GO
EXEC master.dbo.sp_serveroption @server=N'basedados_xarope', @optname=N'rpc out', @optvalue=N'false' GO
EXEC master.dbo.sp_serveroption @server=N'basedados_xarope', @optname=N'sub', @optvalue=N'false' GO
EXEC master.dbo.sp_serveroption @server=N'basedados_xarope', @optname=N'connect timeout', @optvalue=N'0' GO
EXEC master.dbo.sp_serveroption @server=N'basedados_xarope', @optname=N'collation name', @optvalue=null GO
EXEC master.dbo.sp_serveroption @server=N'basedados_xarope', @optname=N'lazy schema validation', @optvalue=N'false' GO
EXEC master.dbo.sp_serveroption @server=N'basedados_xarope', @optname=N'query timeout', @optvalue=N'0' GO
EXEC master.dbo.sp_serveroption @server=N'basedados_xarope', @optname=N'use remote collation', @optvalue=N'true' GO
EXEC master.dbo.sp_serveroption @server=N'basedados_xarope', @optname=N'remote proc transaction promotion', @optvalue=N'true' GO |
| |
| |
| | | |
|
| | |
| |
Membro registado 3.659 mensagems Popularité : +175 (223 votes) |
|
Publicado em junho, 08 2015 - 10:22 PM |
| |
| |
| | | |
|
| | |
| |
Membro registado 3.659 mensagems Popularité : +175 (223 votes) |
|
Publicado em junho, 08 2015 - 10:24 PM |
13o. Testando se deu certo
|
| |
| |
| | | |
|
| | |
| |
Membro registado 3.659 mensagems Popularité : +175 (223 votes) |
|
Publicado em junho, 08 2015 - 10:25 PM |
Resultado ok do teste:
|
| |
| |
| | | |
|
| | |
| |
Membro registado 3.659 mensagems Popularité : +175 (223 votes) |
|
Publicado em junho, 08 2015 - 10:31 PM |
Outro exemplo:
Exec master.dbo.sp_addlinkedserver @server=N’localhost’, @srvprodcut=N’MySQL’, @provider=N’MSDASQL’, @datasrc=N’MySQL’
Exec master.dbo.sp_addlinkedserverlogin @server=N’localhost’, @locallogin=NULL, @rmtuser=N’user’, @rmtpassword=N'<your password>’ @rmtsrvname=N’localhost’ |
| |
| |
| | | |
|
| | |
| |
Membro registado 3.659 mensagems Popularité : +175 (223 votes) |
|
Publicado em junho, 08 2015 - 10:43 PM |
Em Linked Servers
[+] Providers
|
| |
| |
| | | |
|
| | |
| |
Membro registado 3.659 mensagems Popularité : +175 (223 votes) |
|
Publicado em junho, 08 2015 - 10:45 PM |
Executando codigos com Linkdb:
SELECT * FROM OPENQUERY(DB_SPEEDTAXI, 'SELECT * FROM INFORMATION_SCHEMA.TABLES LIMIT 10')
SELECT * FROM OPENQUERY(DB_SPEEDTAXI, 'SELECT * FROM fv_cliente') |
| |
| |
| | | |
|
| | |
| |
Membro registado 3.659 mensagems Popularité : +175 (223 votes) |
|
Publicado em junho, 08 2015 - 10:46 PM |
Open a new query tab, and run a select query [ select * from openquery(MYSQL,‘select * from reptab’)]
Since we also have enabled the RPC, we can test the same using the following query [Execute (‘select * from reptab‘)at MYSQL]
If it returns the same results, the RPC is configured fine.
Follow all the above steps to configure working Linked Server to MySQL.
|
| |
| |
| | | |
|
| | |
| |
Membro registado 3.659 mensagems Popularité : +175 (223 votes) |
|
Publicado em junho, 08 2015 - 10:58 PM |
| |
| |
| | | |
|
| | |
| |
Membro registado 3.659 mensagems Popularité : +175 (223 votes) |
|
Publicado em junho, 09 2015 - 6:55 PM |
| |
| |
| | | |
|
| | | | |
| | |
|