|Antes de incluir as origens de dados do servidor Microsoft SQL em um |servidor federado do DB2, é preciso instalar e configurar o driver ODBC no |servidor federado. Consulte os procedimentos de instalação na |documentação que é fornecida com o driver ODBS, para obter detalhes |específicos sobre como instalar o driver ODBC.
|Para configurar o servidor federado para acessar os dados armazenados nas |origens de dados do servidor Microsoft SQL, você precisa: |
|Este capítulo discute as etapas 3 e 4.
|As instruções neste capítulo aplicam-se às plataformas Windows NT e |AIX. As diferenças específicas da plataforma são observadas onde elas |ocorrem.
|Após você instalar o driver ODBC e o DB2 Relational Connect, inclua as |origens de dados do Microsoft SQL Server em seu servidor federado utilizando |estas etapas: |
|Estas etapas são explicadas com detalhes nas seções a seguir.
|Defina variáveis de ambiente da origem de dados modificando o arquivo |db2dj.ini e emitindo o comando db2set. O |arquivo db2dj.ini contém informações de configuração para |conectar-se às origens de dados do Microsoft SQL Server. O comando |db2set atualiza o registro de perfil do DB2 com suas |definições.
|Em um sistema do banco de dados particionado, você pode utilizar um único |arquivo db2dj.ini para todos os nós em uma instância |específica ou você pode utilizar um único arquivo db2dj.ini |para um ou mais nós em uma instância específica. Um sistema de banco de |dados não-particionado pode ter apenas um arquivo db2dj.ini |por instância.
|Para definir as variáveis de ambiente: |
|ODBCINI=$HOME/.odbc.ini |DJX_ODBC_LIBRARY_PATH=<path to the Merant driver>/lib |DB2ENVLIST=LIBPATH ||
|Emita o comando db2set para atualizar o registro do perfil do |DB2 com suas mudanças. A sintaxe de db2set é dependente da |estrutura do sistema do banco de dados: |
|db2set DB2_DJ_INI=<path to ini file>/db2dj.ini
||db2set -g DB2_DJ_INI=<path to ini file>/db2dj.ini
||db2set -i INSTANCEX 3 DB2_DJ_INI=$HOME/sqllib/cfg/node3.ini
|onde: |
|Para definir o caminho à biblioteca cliente, emita estes comandos:
|db2set DB2LIBPATH=<path para a biblioteca cliente Merant> |db2set DB2ENVLIST=LIBPATH
|O script de shell djxlink.sh liga as bibliotecas do |cliente às bibliotecas do wrapper. Para executar o script de |shell:
|djxlink
|Se você achar que ela obtém um período de tempo irregular para acessar a |origem de dados do Microsoft SQL Server, poderá melhorar o desempenho |definindo a variável de ambiente DB2_DJ_COMM para carregar o wrapper quando o |servidor federado é inicializado, em vez de quando você tenta acessar a origem |de dados. Defina a variável de ambiente DB2_DJ_COMM para incluir a |biblioteca wrapper que corresponde ao wrapper especificado na Etapa 5. |Por exemplo: |
|db2set DB2_DJ_COMM=djxmssql3.dll
|db2set DB2_DJ_COMM=libmssql3.a
||Assegure-se de que não haja nenhum espaço em nenhum lado do sinal de igual |(=).
|Consulte a publicação DB2 SQL Reference para obter mais |informações sobre os nomes da biblioteca wrapper.
|Para assegurar-se de que as variáveis de ambiente estejam definidas no |programa, recicle a instância do DB2. Quando você reciclar a instância, |atualize a instância do DB2 para aceitar as alterações feitas. Recicle |a instância do DB2, emitindo os seguintes comandos:
|db2stop |db2start
|O DB2 Universal Database possui dois protocolos diferentes, chamados
|wrappers, que você pode utilizar para acessar as origens de dados do Microsoft
|SQL Server. Wrappers são mecanismos que os servidores federados
|utilizam para comunicar-se com as origens de dados e recuperar dados destas
|fontes. O wrapper que você utiliza depende da platarfoma na qual o DB2
|Universal Database está sendo executado. Utilize Tabela 3 como um guia, para selecionar o wrapper apropriado.
|
Drivers ODBC | Plataforma | Nome do Wrapper |
Driver ODBC 3.0 (ou superior) | Windows NT | DJXMSSQL3 |
Driver MERANT DataDirect Connect ODBC 3.6 | AIX | MSSQLODBC3 |
|Utilize a instrução CREATE WRAPPER para especificar o wrapper que |será utilizado para acessar as origens de dados do Microsoft SQL |Server. O exemplo a seguir mostra uma instrução CREATE WRAPPER:
|CREATE WRAPPER DJXMSSQL3
|onde DJXMSSQL3 é o nome do wrapper padrão utilizado em um |servidor DB2 para Windows NT (utilizando o driver ODBC 3.0). Se |você tiver um servidor DB2 para AIX, especificará o nome do wrapper |MSSQLODBC3.
|Você pode substituir o nome do wrapper padrão por um nome de sua |escolha. Entretanto, se isso acontecer, você deverá incluir o parâmetro |LIBRARY e o nome da biblioteca wrapper para seu servidor federado na instrução |CREATE WRAPPER. Por exemplo: |
|CREATE WRAPPER wrapper_name LIBRARY 'djxmssql3.dll'
|onde wrapper_name é o nome que você deseja fornecer ao wrapper |e 'djxmssql3.dll' é o nome da biblioteca.
|CREATE WRAPPER wrapper_name LIBRARY 'libmssql3.a'
|onde wrapper_name é o nome que você deseja fornecer ao wrapper |e 'libdjxmssql.a' é o nome da biblioteca. |
|Consulte a instrução CREATE WRAPPER na publicação DB2 SQL |Reference para obter mais informações sobre os nomes de bibliotecas do |wrapper.
|Utilize a instrução CREATE SERVER para definir cada origem de dados do |Microsoft SQL Server ao qual você deseja conectar-se. Por |exemplo:
|CREATE SERVER sqlserver TYPE MSSQLSERVER VERSION 7.0 WRAPPER djxmssql3 |OPTIONS (NODE 'sqlnode', DBNAME 'database_name')
|onde: |
|Embora o nome do nó (nome do DSN do Sistema) esteja especificado |como uma opção na instrução CREATE SERVER, ele é requerido para as origens de |dados do Microsoft SQL Server. No Windows, obtenha o DSN na guia DSN do |Sistema da ferramenta Windows ODBC Data Administrator. No AIX, obtenha |o DSN do arquivo .odbc.ini no diretório inicial de proprietários |de instância do DB2.
|Consulte DB2 SQL Reference para opções adicionais que você pode |utilizar com a instrução CREATE WRAPPER.
|Embora o nome do banco de dados esteja especificado como uma opção na |instrução CREATE SERVER, ele é requerido para as origens de dados do Microsoft |SQL Server. |
|Se um ID do usuário ou uma senha no servidor federado for diferente de um |ID do usuário ou senha de uma origem de dados do Microsoft SQL Server, utilize |a instrução CREATE USER MAPPING para mapear o ID do usuário local para o ID do |usuário e para a senha definidos na origem de dados do Microsoft SQL |Server; por exemplo:
|CREATE USER MAPPING FOR db2user SERVER server_name |OPTIONS (REMOTE_AUTHID 'mssqluser', REMOTE_PASSWORD 'day2night')
|onde: |
|Consulte a publicação DB2 SQL Reference para obter as opções |adicionais que você pode utilizar com a instrução CREATE USER MAPPING.
|Atribua um pseudônimo para cada exibição ou tabela localizadas em sua |origem de dados do Microsoft SQL Server que você deseja acessar. Você |utilizará esses pseudônimos, quando consultar a origem de dados do Microsoft |SQL Server. Utilize a instrução CREATE NICKNAME para atribuir um |pseudônimo. Os pseudônimos têm distinção entre maiúsculas e |minúsculas. O exemplo a seguir mostra uma instrução CREATE |NICKNAME:
|CREATE NICKNAME mssqlsales FOR server_name.salesdata.europe
|onde: |
|data_source_server_name.remote_schema_name.remote_table_name
|As aspas duplas são recomendadas para as partes |remote_schema_name e remote_table_name do |pseudônimo. |
|Quando você cria um pseudônimo, o DB2 tenta acessar as tabelas do catálogo |de origens de dados (o Microsoft SQL Server refere-se a estas como tabelas do |sistema). Isso testa a conexão à origem de dados. Se a conexão |falhar, você receberá uma mensagem de erro.
|Repita esta etapa para todas as tabelas e exibições do banco de dados para |o qual você deseja criar pseudônimos.
|Para obter mais informações sobre a instrução CREATE NICKNAME, consulte a |publicação DB2 SQL Reference. Para obter mais informações |sobre os pseudônimos em geral e para verificar os mapeamentos dos tipos de |dados, consulte a publicação Manual de Administração do DB2.
|Se você estiver tendo problemas quando acessar a origem de dados, poderá |obter as informações de rastreio do ODBC para analisar e resolver esses |problemas. Para garantir que o rastreio do ODBC funciona corretamente, |utilize a ferramenta de rastreio fornecida pelo ODBC Data Source |Administrator. Ativar o rastreio impacta o desempenho do sistema, |portanto, você deve desligar o rastreio quando tiver resolvido os |problemas.
|O Microsoft SQL Server suporta muitas opções comuns da página de códigos do
|NLS (National Language Support) que o UDB do DB2 suporta. As origens de
|dados que estão utilizando o mesmo conjunto de códigos que o DB2, não requerem
|conversão. A tabela 3 lista as páginas de códigos que são suportadas
|pelo DB2 Universal Database e Microsoft SQL Server.
|
|Tabela 4. Opções da Página de Códigos do DB2 UDB e do Microsoft SQL Server
Página de códigos | Idioma suportado |
---|---|
1252 | Conjunto de caracteres ISO |
850 | Multilíngüe |
437 | Inglês Americano |
874 | Tai |
932 | Japonês |
936 | Chinês (simplificado) |
949 | Coreano |
950 | Chinês (tradicional) |
1250 | Europa Central |
1251 | Cirílico |
1253 | Grego |
1254 | Turco |
1255 | Hebraico |
1256 | Árabe |
|Quando o servidor federado do DB2 e o Microsoft SQL Server estiverem |executando diferentes páginas de códigos do NLS (National Language Support), |as origens de dados do servidor Microsoft SQL devem ser configuradas para |corresponderem a estes equivalentes ou o código cliente deve conseguir |detectar a inconsistência e sinalizá-la como um erro ou mapear os dados |utilizando sua própria semântica. Se nenhuma tabela de conversão puder |ser encontrada da página de códigos de origem para a página de códigos de |destino, o DB2 emitirá uma mensagem de erro. Consulte a documentação do |Microsoft SQL Server, para obter mais informações.