MySQL Connector/Net

Strings de conexão para MySQL Connector/Net

MySQL

Padrão

Server=Servidor;Database=BancoDeDados;Uid=Usuario;Pwd=Senha;

Alternativa de Named pipes

Server=Servidor;Port=-1;Database=BancoDeDados;Uid=Usuario;Pwd=Senha;

O valor do porto de -1 indica ao driver para usar o protocolo de rede named pipes. Isso está disponível apenas no Windows. O valor é ignorado se o soquete Unix for usado.

Comprimir comunicação de rede entre cliente e servidor

Server=Servidor;Database=BancoDeDados;Uid=Usuario;Pwd=Senha;UseCompression=True;

Conexão de socket Unix

Server=Servidor;Database=BancoDeDados;Uid=Usuario;Pwd=Senha;Protocol=memory;Shared Memory Name=MYSQL;

É possível definir explicitamente o nome do objeto de memória compartilhada usado para comunicação.

Contar linhas alteradas em vez de linhas encontradas

Server=Servidor;Database=BancoDeDados;Uid=Usuario;Pwd=Senha;UseAffectedRows=True;

Esta opção está disponível a partir da versão 5.2.6 do Connector/NET.

Desativar cache de Stored procedure

Server=Servidor;Database=BancoDeDados;Uid=Usuario;Pwd=Senha;ProcedureCacheSize=0;

O padrão é 25, o que significa que os metadados da stored procedure (como tipos de dados de entrada/saída, etc.) para as 25 últimas procedures chamadas serão armazenados em cache na memória do cliente.

Esta opção está disponível a partir da versão Connector/NET 5.0.2

Desativar lotes

Server=Servidor;Database=BancoDeDados;Uid=Usuario;Pwd=Senha;AllowBatch=False;

Desativar participação em transação

O uso de transações automáticas de escopo (comportamento padrão) pode causar problemas em ambientes de confiança média.

Server=Servidor;Database=BancoDeDados;Uid=Usuario;Pwd=Senha;AutoEnlist=False;

Desativar pool de conexões

Server=Servidor;Database=BancoDeDados;Uid=Usuario;Pwd=Senha;Pooling=False;

Especificando conjunto de caracteres

Use esta para especificar qual conjunto de caracteres usar para codificar consultas enviadas ao servidor.

Server=Servidor;Database=BancoDeDados;Uid=Usuario;Pwd=Senha;CharSet=utf8;

Atenção! Use o valor em minúsculas utf8 e não em maiúsculas UTF8, pois isso falhará.

Observe que os conjuntos de resultados ainda são retornados no conjunto de caracteres dos dados retornados.

Especificando porta TCP

Server=Servidor;Port=1234;Database=BancoDeDados;Uid=Usuario;Pwd=Senha;

A porta 3306 é a padrão para MySql.

O valor é ignorado se o Unix socket for usado.

Especificando protocolo de rede

Use esta para especificar qual protocolo de rede usar para a conexão.

Server=Servidor;Database=BancoDeDados;Uid=Usuario;Pwd=Senha;Protocol=socket;

"socket" é o valor padrão usado se a chave não for especificada. O valor "tcp" é equivalente a "socket".

Use "pipe" para usar uma conexão de pipes nomeados, "unix" para uma conexão de socket Unix e "memory" para usar memória compartilhada do MySQL.

Especificando tempo limite de tentativa de conexão

Use este para especificar o tempo em segundos para esperar por uma conexão com o servidor antes de encerrar a tentativa e receber um erro.

Server=Servidor;Database=BancoDeDados;Uid=Usuario;Pwd=Senha;Connection Timeout=5;

Especificar tempo limite de comando padrão

Use esta para especificar um tempo limite de comando padrão para a conexão. Observe que a propriedade na string de conexão não substitui a propriedade de tempo limite de comando individual em um objeto de comando individual.

Server=Servidor;Database=BancoDeDados;Uid=Usuario;Pwd=Senha;default command timeout=20;

Esta opção está disponível a partir da versão Connector/NET 5.1.4.

Forçar criptografia

Sempre use SSL. Negue a conexão se o servidor não suportar SSL.

Server=Servidor;Database=BancoDeDados;Uid=Usuario;Pwd=Senha;SslMode=Required;

Esta opção está disponível a partir da versão 6.2.1 do Connector/NET.

Habilitar contadores de desempenho

Server=Servidor;Database=BancoDeDados;Uid=Usuario;Pwd=Senha;UsePerformanceMonitor=True;

Ignorar correspondência de tipo e ordem de parâmetro para procedimentos armazenados

Server=Servidor;Database=BancoDeDados;Uid=Usuario;Pwd=Senha;UseProcedureBodies=False;

O comportamento padrão é ler as tabelas mysql.proc/INFORMATION_SCHEMA.ROUTINES e tentar mapear os valores dos parâmetros de comando fornecidos para os parâmetros dos procedimentos chamados e converter os tipos de valores de acordo.

Isso pode ser problemático se as permissões para as tabelas de informações de sproc mencionadas forem insuficientes.

O driver não mapeará automaticamente os parâmetros, então você deve definir manualmente os tipos de parâmetros e também deve garantir que os parâmetros sejam adicionados ao objeto de comando na ordem exata como apareceu na definição do procedimento.

Esta opção está disponível a partir da versão Connector/NET 5.0.4

Inativando declarações preparadas

Use esta opção para instruir o provedor a ignorar qualquer comando prepare statements e prevenir problemas de corrupção com comandos prepare statements do lado do servidor.

Server=Servidor;Database=BancoDeDados;Uid=Usuario;Pwd=Senha;Ignore Prepare=true;

A opção foi adicionada nas versões 5.0.3 e 1.0.9 do Connector/NET.

Invalid DateTime's 1

Server=Servidor;Database=BancoDeDados;Uid=Usuario;Pwd=Senha;AllowZeroDateTime=True;

Retorna um objeto MySqlDateTime para valores inválidos e um objeto System.DateTime para valores válidos.

Invalid DateTime's 2

Server=Servidor;Database=BancoDeDados;Uid=Usuario;Pwd=Senha;ConvertZeroDateTime=True;

Retorna um objeto System.DateTime com valor System.DateTime.MinValue para valores inválidos e um objeto System.DateTime para valores válidos.

Manter soquetes TCP ativos

Server=Servidor;Database=BancoDeDados;Uid=Usuario;Pwd=Senha;Keepalive=10;

Número de segundos entre cada pacote keep-alive enviado.

Múltiplos servidores

Use isso para se conectar a um servidor em uma configuração de servidor replicado sem se preocupar com qual servidor usar.

Server=Servidor1,Servidor2,Servidor3;Database=BancoDeDados;Uid=Usuario;Pwd=Senha;

Não atualizar configurações do servidor em conexões no pool

Uma conexão pode ser de longa duração no pool, no entanto, as configurações do servidor de conexão são atualizadas (comando SHOW VARIABLES) cada vez que retornam ao pool. Isso faz com que o uso do cliente do objeto de conexão esteja atualizado com as configurações corretas do servidor. No entanto, isso causa uma viagem de ida e volta e para otimizar o desempenho do pool, esse comportamento pode ser desativado.

Server=Servidor;Database=BancoDeDados;Uid=Usuario;Pwd=Senha;CacheServerProperties=True;

Esta opção está disponível a partir da versão Connector/NET 6.3

Permitir colchetes em volta de símbolos (ao invés de crases)

Server=Servidor;Database=BancoDeDados;Uid=Usuario;Pwd=Senha;sqlservermode=True;

Isso permite que os assistentes do Visual Studio que colocam símbolos entre [] funcionem com o Connector/Net. Esta opção causa uma redução de desempenho, então só deve ser usada se necessário.

Esta opção está disponível a partir da versão 6.3.1 do Connector/NET

Permitir Variáveis de Usuário

Server=Servidor;Database=BancoDeDados;Uid=Usuario;Pwd=Senha;AllowUserVariables=True;

Esta opção está disponível a partir da versão 5.2.2 do Connector/NET

Pooling de Conexão

A partir da versão 6.2, as conexões ociosas são removidas do pool, liberando recursos no cliente (sockets) e no servidor (sockets e threads). Não mantenha manualmente conexões (globais) e abra/feche. Mantenha a criação e disposição do objeto de conexão o mais breve possível; isso pode ser contraintuitivo, mas os mecanismos de pooling cuidarão bem do cache e seu código será mais limpo.

Server=Servidor;Database=BancoDeDados;Uid=Usuario;Pwd=Senha;Pooling=True;

Este é o comportamento padrão.

Protocolo de memória compartilhada

Server=Servidor;Database=BancoDeDados;Uid=Usuario;Pwd=Senha;Protocol=memory;Shared Memory Name=MYSQL;

É possível definir explicitamente o nome do objeto de memória compartilhada usado para comunicação.

Protocolo Named Pipes

Server=Servidor;Database=BancoDeDados;Uid=Usuario;Pwd=Senha;Protocol=pipe;PipeName=mypipename;

É possível definir explicitamente o nome do pipe usado para comunicação, se não for definido, "mysql" é o valor padrão.

Pular verificações de parâmetros para rotinas armazenadas

O comportamento padrão é que os parâmetros para rotinas armazenadas (procedimentos armazenados) sejam verificados contra o servidor

Server=Servidor;Database=BancoDeDados;Uid=Usuario;Pwd=Senha;CheckParameters=False;

Alguns erros relacionados a permissões e conversões de valores foram corrigidos ao usar esta opção de conexão.

Reciclar conexões no pool

Isso é útil em cenários de balanceamento de carga quando os servidores disponíveis mudam e você não quer 100 conexões constantes no pool apontando para apenas um servidor.

Server=Servidor;Database=BancoDeDados;Uid=Usuario;Pwd=Senha;ConnectionLifeTime=300;

Especificado em segundos, a quantidade de tempo após a criação do objeto de conexão em que a conexão será destruída. A destruição só acontecerá quando as conexões forem devolvidas ao pool.

Redefinição de estado de conexão ao ser obtido do pool

Server=Servidor;Database=BancoDeDados;Uid=Usuario;Pwd=Senha;ConnectionReset=True;

Faz uma viagem adicional ao servidor ao obter uma conexão do pool e o estado da conexão será redefinido.

Registrar operações ineficientes de banco de dados

Server=Servidor;Database=BancoDeDados;Uid=Usuario;Pwd=Senha;UseUsageAdvisor=True;

SSL com um certificado baseado em armazenamento pessoal

Server=Servidor;Database=BancoDeDados;Uid=Usuario;Pwd=Senha;SSL Mode=Required;Certificate Store Location=CurrentUser;

Esta opção está disponível a partir da versão 6.2.1 do Connector/NET.

SSL com um certificado baseado em arquivo

Server=Servidor;Database=BancoDeDados;Uid=Usuario;Pwd=Senha;SSL Mode=Required;CertificateFile=C:\Diretorio\Arquivo.pfx;CertificatePassword=pass;

Esta opção está disponível a partir da versão 6.2.1 do Connector/NET.

SSL com um certificado específico de loja pessoal baseado em impressão digital

Server=Servidor;Database=BancoDeDados;Uid=Usuario;Pwd=Senha;SSL Mode=Required;Certificate Store Location=CurrentUser;Certificate Thumbprint=479436009a40f3017a145cf8479e7694d7aadef0;

Esta opção está disponível a partir da versão 6.2.1 do Connector/NET.

Tamanho do Pool de Conexão

Server=Servidor;Database=BancoDeDados;Uid=Usuario;Pwd=Senha;MinimumPoolSize=10;maximumpoolsize=50;

Os valores padrão são 0 e 100.

Usando criptografia (antiga)

Este ativa a criptografia SSL para todos os dados enviados entre o cliente e o servidor. O servidor deve ter um certificado instalado.

Server=Servidor;Database=BancoDeDados;Uid=Usuario;Pwd=Senha;Encrypt=true;

Esta opção está disponível para a versão 5.0.3 até 6.2.1 do Connector/NET. A partir da versão 6.2.1, utilize a opção SslMode em vez desta.

Usando criptografia (novo)

Use SSL se o servidor suportar, mas permita a conexão em todos os casos

Server=Servidor;Database=BancoDeDados;Uid=Usuario;Pwd=Senha;SslMode=Preferred;

Esta opção está disponível a partir da versão 6.2.1 do Connector/NET.

Usar autenticação do Windows

Server=Servidor;Database=BancoDeDados;IntegratedSecurity=yes;Uid=auth_windows;

Esta opção está disponível a partir da versão Connector/NET 6.4.4

O Plugin de Autenticação Nativa do Windows deve estar instalado para que isso funcione.

Usar cache de tabela

Server=Servidor;Database=BancoDeDados;Uid=Usuario;Pwd=Senha;tablecache=true;DefaultTableCacheAge=30;

Especificar DefaultTableCacheAge é opcional, o valor padrão é 60 segundos.

Esta opção está disponível a partir da versão Connector/NET 6.4

Usar GUIDs BINARY(16)

Server=Servidor;Database=BancoDeDados;Uid=Usuario;Pwd=Senha;OldGuids=True;

Esta opção está disponível a partir da versão Connector/NET 6.1.1