SlideShare uma empresa Scribd logo
1 de 861
Baixar para ler offline
Manual de Referência do MySQL 4.1
Manual de Referência do MySQL 4.1
This is a translation of the MySQL Reference Manual that can be found at dev.mysql.com. The original Reference
Manual is in English, and this translation is not necessarily as up to date as the English version.
Copyright © 1997-2006 MySQL AB
Resumo
Document generated on: 2010-03-14 (revisão: 242)
This manual is NOT distributed under a GPL style license. Use of the manual is subject to the following terms:
• Conversion to other formats is allowed, but the actual content may not be altered or edited in any way.
• You may create a printed copy for your own personal use.
• For all other uses, such as selling printed copies or using the manual in whole or in part within another publication, prior written agreement from
MySQL AB is required.
Please contact the http://www.mysql.com/company/contact/ for more information or if you are interested in doing a translation.
Índice
Preface ........................................................................................................................................ xv
1. Informações Gerais ........................................................................................................................1
1.1. Sobre Este Manual ...............................................................................................................1
1.1.1. Convenções Usadas Neste Manual ..................................................................................2
1.2. Visão Geral do Sistema de Gerenciamento de Banco de Dados MySQL ................................................3
1.2.1. História do MySQL ...................................................................................................4
1.2.2. As Principais Características do MySQL ..........................................................................4
1.2.3. Estabilidade do MySQL ..............................................................................................6
1.2.4. Qual o Tamanho Que as Tabelas do MySQL Podem Ter? ......................................................7
1.2.5. Compatibilidade Com o Ano 2000 (Y2K) .........................................................................8
1.3. Visão Geral da MySQL AB ....................................................................................................9
1.3.1. O Modelo de Negócio e Serviços da MySQL AB .............................................................. 10
1.3.2. Informações para Contato .......................................................................................... 11
1.4. Suporte e Licenciamento do MySQL ....................................................................................... 12
1.4.1. Suporte Oferecido pela MySQL AB .............................................................................. 12
1.4.2. Copyrights e Licenças Usadas pelo MySQL ..................................................................... 12
1.4.3. Licenças do MySQL ................................................................................................ 13
1.4.4. Logomarcas e Marcas Registradas da MySQL AB ............................................................. 14
1.5. Mapa de Desenvolvimento do MySQL ..................................................................................... 15
1.5.1. MySQL 4.0 in a Nutshell ........................................................................................... 15
1.5.2. MySQL 4.1 in a Nutshell ........................................................................................... 17
1.5.3. MySQL 5.0, A Próxima Distribuição de Desenvolvimento ................................................... 18
1.6. MySQL e o Futuro (o TODO) ............................................................................................... 18
1.6.1. Novos Recursos Planejados Para a Versão 4.1 .................................................................. 18
1.6.2. Novos Recursos Planejados Para a Versão 5.0 .................................................................. 19
1.6.3. Novos Recursos Planejados Para a Versão 5.1 .................................................................. 19
1.6.4. Novos Recursos Planejados Para a Versão em um Futuro Próximo .......................................... 20
1.6.5. Novos Recursos Planejados Para a Versão em um Futuro a Médio Prazo ................................... 22
1.6.6. Novos Recursos que Não Planejamos Fazer ..................................................................... 23
1.7. Fontes de Informações do MySQL .......................................................................................... 23
1.7.1. Listas de Discussão MySQL ....................................................................................... 23
1.7.2. Suporte a Comunidade MySQL Atrvés do IRC (Internet Relay Chat) ....................................... 29
1.8. Qual compatibilidade aos padrões o MySQL oferece ? .................................................................. 29
1.8.1. Qual Padrão o MySQL Segue? .................................................................................... 30
1.8.2. Executando o MySQL no modo ANSI ........................................................................... 30
1.8.3. Extensões do MySQL para o Padrão SQL-92 ................................................................... 31
1.8.4. Diferenças do MySQL em Comparação com o SQL-92 ....................................................... 33
1.8.5. Como o MySQL Lida com Restrições ............................................................................ 37
1.8.6. Erros Conhecidos e Deficiências de Projetos no MySQL ...................................................... 38
2. Instalação do MySQL ................................................................................................................... 43
2.1. Instalação rápida padrão do MySQL ........................................................................................ 43
2.1.1. Instalando o MySQL no Windows ................................................................................ 43
2.1.2. Instalando o MySQL no Linux .................................................................................... 50
2.1.3. Instalando o MySQL no Mac OS X ............................................................................... 51
2.1.4. Instalando o MySQL no NetWare ................................................................................. 53
2.2. Detalhes Gerais de Instalação ................................................................................................ 54
2.2.1. Como obter o MySQL .............................................................................................. 54
2.2.2. Verificando a Integridade do Pacote Usando MD5 Checksums ou GnuPG .............................. 54
2.2.3. Sistemas Operacionais suportados pelo MySQL ................................................................ 56
2.2.4. Qual versão do MySQL deve ser usada .......................................................................... 57
2.2.5. Layouts de Instalação ............................................................................................... 59
2.2.6. Como e quando as atualizações são lançadas? .................................................................. 60
2.2.7. Filosofia das Distribuições - Nenhum Bug Conhecidos nas Distribuições .................................. 61
2.2.8. Binários MySQL compilados pela MySQL AB ................................................................. 61
2.2.9. Instalando uma Distribuição Binária do MySQL ............................................................... 65
2.3. Instalando uma distribuição com fontes do MySQL ...................................................................... 67
2.3.1. Visão geral da instalação rápida ................................................................................... 68
2.3.2. Aplicando patches ................................................................................................... 69
2.3.3. Opções típicas do configure ................................................................................... 70
2.3.4. Instalando pela árvore de fontes do desenvolvimento .......................................................... 72
2.3.5. Lidando com Problemas de Compilação ......................................................................... 74
2.3.6. Notas MIT-pthreads ................................................................................................. 76
2.3.7. Instalando o MySQL a partir do Fonte no Windows ........................................................... 77
2.4. Configurações e Testes Pós-instalação ..................................................................................... 80
iv
2.4.1. Problemas Executando o mysql_install_db .............................................................. 83
2.4.2. Problemas Inicializando o Servidor MySQL .................................................................... 84
2.4.3. Inicializando e parando o MySQL automaticamente. .......................................................... 85
2.5. Atualizando/Desatualizando o MySQL ..................................................................................... 86
2.5.1. Atualizando da Versão 4.0 para 4.1 ............................................................................... 87
2.5.2. Atualizando da Versão 3.23 para 4.0 ............................................................................. 89
2.5.3. Atualizando da versão 3.22 para 3.23 ............................................................................. 91
2.5.4. Atualizando da versão 3.21 para 3.22 ............................................................................. 92
2.5.5. Atualizando da versão 3.20 para 3.21 ............................................................................. 93
2.5.6. Atualizando a Tabela de Permissões .............................................................................. 93
2.5.7. Atualizando para outra arquitetura ................................................................................ 94
2.5.8. Atualizando o MySQL no Windows .............................................................................. 95
2.6. Notas específicas para os Sistemas Operacionais ......................................................................... 95
2.6.1. Notas Windows ...................................................................................................... 96
2.6.2. Notas Linux (Todas as versões) ................................................................................... 98
2.6.3. Notas Solaris ........................................................................................................103
2.6.4. Notas BSD ...........................................................................................................107
2.6.5. Notas Mac OS X ....................................................................................................109
2.6.6. Notas de Outros Unix ..............................................................................................110
2.6.7. Notas OS/2 ..........................................................................................................117
2.6.8. Notas Novell NetWare .............................................................................................118
2.6.9. Notas BeOS .........................................................................................................118
2.7. Comentários de Instalação do Perl .........................................................................................118
2.7.1. Instalando Perl no Unix ............................................................................................118
2.7.2. Instalaando ActiveState Perl no Windows ......................................................................119
2.7.3. Problemas Usando a Interface Perl DBI/DBD ..................................................................119
3. Tutorial de Introdução Do MySQL ...................................................................................................122
3.1. Conectando e Desconectando do Servidor ................................................................................122
3.2. Fazendo Consultas ............................................................................................................122
3.3. Criação e Utilização de um Banco de Dados .............................................................................125
3.3.1. Criando e Selecionando um Banco de Dados ...................................................................126
3.3.2. Criando uma Tabela ................................................................................................126
3.3.3. Carregando dados em uma tabela ................................................................................127
3.3.4. Recuperando Informações de uma Tabela ......................................................................128
3.4. Obtendo Informações Sobre Bancos de Dados e Tabelas ...............................................................138
3.5. Utilizando mysql em Modo Batch ........................................................................................139
3.6. Exemplos de Consultas Comuns ............................................................................................140
3.6.1. O Valor Máximo para uma Coluna ..............................................................................140
3.6.2. O Registro que Armazena o Valor Máximo para uma Coluna Determinada ...............................140
3.6.3. Máximo da Coluna por Grupo ....................................................................................141
3.6.4. As Linhas Armazenando o Group-wise Máximo de um Certo Campo .....................................141
3.6.5. Utilizando Variáveis de Usuário ..................................................................................142
3.6.6. Utilizando Chaves Estrangeiras ..................................................................................142
3.6.7. Pesquisando em Duas Chaves ....................................................................................143
3.6.8. Calculando Visitas Diárias ........................................................................................143
3.6.9. Usando AUTO_INCREMENT .....................................................................................144
3.7. Consultas de Projetos Gêmeos ..............................................................................................145
3.7.1. Encontrando Todos Gêmeos Não-distribuídos .................................................................145
3.7.2. Mostrando uma Tabela sobre a Situação dos Pares Gêmeos .................................................146
3.8. Utilizando MySQL com Apache ...........................................................................................147
4. Administração do Bancos de Dados MySQL .......................................................................................148
4.1. Configurando o MySQL .....................................................................................................148
4.1.1. Opções de Linha de Comando do mysqld .....................................................................148
4.1.2. Arquivo de Opções my.cnf .....................................................................................154
4.2. Executando Múltiplos MySQL Servers na Mesma Máquina ...........................................................157
4.2.1. Executando Múltiplos Servidores no Windows ................................................................158
4.2.2. Executando Múltiplos Servidores no Unix ......................................................................160
4.2.3. Usando Programas Clientes em um Ambiente Multi-Servidor ...............................................161
4.3. Detalhes Gerais de Segurança e o Sistema de Privilégio de Acesso do MySQL .....................................162
4.3.1. Segurança Geral ....................................................................................................162
4.3.2. Como Tornar o MySQL Seguro contra Crackers ..............................................................164
4.3.3. Opções de Inicialização para o mysqld em Relação a Segurança. .........................................165
4.3.4. Detalhes de Segurança com LOAD DATA LOCAL ...........................................................165
4.3.5. O Que o Sistema de Privilégios Faz .............................................................................166
4.3.6. Como o Sistema de Privilégios Funciona .......................................................................166
4.3.7. Privilégios Fornecidos pelo MySQL .............................................................................169
4.3.8. Conectando ao Servidor MySQL .................................................................................170
4.3.9. Controle de Acesso, Estágio 1: Verificação da Conexão .....................................................171
4.3.10. Controle de Acesso, Estágio 2: Verificação da Requisição .................................................173
4.3.11. Hashing de Senhas no MySQL 4.1 .............................................................................175
Manual de Referência do MySQL 4.1
v
4.3.12. Causas dos Erros de Accesso Negado .....................................................................178
4.4. Gerenciamento das Contas dos Usuários no MySQL ....................................................................181
4.4.1. A Sintaxe de GRANT e REVOKE .................................................................................181
4.4.2. Nomes de Usuários e Senhas do MySQL .......................................................................185
4.4.3. Quando as Alterações nos Privilégios tem Efeito ..............................................................185
4.4.4. Configurando os Privilégios Iniciais do MySQL ...............................................................186
4.4.5. Adicionando Novos Usuários ao MySQL .......................................................................187
4.4.6. Deletando Usuários do MySQL ..................................................................................189
4.4.7. Limitando os Recursos dos Usuários ............................................................................189
4.4.8. Configurando Senhas ..............................................................................................190
4.4.9. Mantendo Sua Senha Segura ......................................................................................190
4.4.10. Usando Conexões Seguras .......................................................................................191
4.5. Prevenção de Disastres e Recuperação ....................................................................................195
4.5.1. Backups dos Bancos de Dados ...................................................................................195
4.5.2. Sintaxe de BACKUP TABLE .....................................................................................197
4.5.3. Sintaxe de RESTORE TABLE ....................................................................................197
4.5.4. Sintaxe de CHECK TABLE .......................................................................................197
4.5.5. Sintaxe do REPAIR TABLE .....................................................................................199
4.5.6. Utilizando myisamchk para Manutenção de Tabelas e Recuperação em Caso de Falhas ..............199
4.5.7. Configurando um Regime de Manutenção das Tabelas .......................................................208
4.5.8. Obtendo Informações sobre as Tabelas ..........................................................................208
4.6. Adiministração do Banco de Dados e Referência de Linguagem ......................................................212
4.6.1. Sintaxe de OPTIMIZE TABLE ..................................................................................212
4.6.2. Sintaxe de ANALYZE TABLE ....................................................................................212
4.6.3. Sintaxe de CHECKSUM TABLE ..................................................................................213
4.6.4. Sintaxe de FLUSH ..................................................................................................213
4.6.5. Sintaxe de RESET ..................................................................................................214
4.6.6. Sintaxe de PURGE MASTER LOGS ............................................................................214
4.6.7. Sintaxe de KILL ....................................................................................................214
4.6.8. Sintaxe de SHOW ....................................................................................................215
4.7. Localização do MySQL e Utilização Internacional ......................................................................230
4.7.1. O Conjunto de Caracteres Utilizado para Dados e Ordenação ...............................................230
4.7.2. Mensagens de Erros em Outras Línguas ........................................................................231
4.7.3. Adicionando um Novo Conjunto de Caracteres ................................................................231
4.7.4. Os Vetores de Definições de Caracteres .........................................................................233
4.7.5. Suporte à Ordenação de Strings ..................................................................................233
4.7.6. Suporte à Caracteres Multi-byte ..................................................................................233
4.7.7. Problemas com Conjuntos de Caracteres ........................................................................233
4.8. Utilitários e Scripts do Lado do Servidor MySQL .......................................................................234
4.8.1. Visão Geral dos Scripts e Utilitários do Lado Servidor .......................................................234
4.8.2. mysqld-safe, o wrapper do mysqld ........................................................................234
4.8.3. mysqld_multi, programa para gerenciar múltiplos servidores MySQL ................................236
4.8.4. myisampack, O Gerador de Tabelas Compactadas de Somente Leitura do MySQL ...................238
4.8.5. mysqld-max, om servidor mysqld extendido ..............................................................243
4.9. Utilitários e Scripts do Lado do Cliente MySQL .........................................................................244
4.9.1. Visão Geral dos Utilitários e Scripts do Lado do Cliente .....................................................244
4.9.2. mysql, A Ferramenta de Linha de Comando ..................................................................245
4.9.3. mysqlcc, The MySQL Control Center ........................................................................252
4.9.4. mysqladmin, Administrando um Servidor MySQL .........................................................254
4.9.5. mysqlbinlog, Executando as Consultas a Partir de um Log Binário ....................................256
4.9.6. Usando mysqlcheck para Manutenção de Tabelas e Recuperação em Caso de Falhas ................256
4.9.7. mysqldump, Descarregando a Estrutura de Tabelas e Dados ...............................................259
4.9.8. mysqlhotcopy, Copiando Bancos de Dados e Tabelas do MySQL .....................................262
4.9.9. mysqlimport, Importando Dados de Arquivos Texto .....................................................264
4.9.10. mysqlshow, Exibindo Bancos de Dados, Tabelas e Colunas .............................................265
4.9.11. mysql_config, Opções para compilação do cliente MySQL ...........................................266
4.9.12. perror, Explicando Códigos de Erros .......................................................................267
4.9.13. Como Executar Comandos SQL a Partir de um Arquivo Texto ............................................267
4.10. Os Arquivos de Log do MySQL ..........................................................................................267
4.10.1. O Log de Erros ....................................................................................................268
4.10.2. O Log de Consultas ...............................................................................................268
4.10.3. O Log de Atualizações ...........................................................................................268
4.10.4. O Log Binário .....................................................................................................269
4.10.5. O Log para Consultas Lentas ....................................................................................271
4.10.6. Manutenção do Log de Arquivo ................................................................................271
4.11. Replicação no MySQL .....................................................................................................272
4.11.1. Introdução ..........................................................................................................272
4.11.2. Visão Geral da Implementação da Replicação ................................................................272
4.11.3. Detalhes de Implementação da Replicação ....................................................................273
4.11.4. Como Configurar a Replicação .................................................................................276
Manual de Referência do MySQL 4.1
vi
4.11.5. Recursos de Replicação e Problemas Conhecidos ............................................................279
4.11.6. Opções de Inicialização da Replicação ........................................................................281
4.11.7. Instruções SQL para Controle do Servidor Master ...........................................................287
4.11.8. Instruções SQL para Controle do Servidor Slave .............................................................288
4.11.9. FAQ da Replicação ...............................................................................................294
4.11.10. Problemas com Replicação .....................................................................................298
4.11.11. Relatando Problemas de Replicação ..........................................................................299
5. Otimização do MySQL .................................................................................................................300
5.1. Visão Geral da Otimização ..................................................................................................300
5.1.1. Limitações do Projeto MySQL/Trocas ..........................................................................300
5.1.2. Portabilidade ........................................................................................................300
5.1.3. Para que Utilizamos o MySQL? ..................................................................................301
5.1.4. O Pacote de Benchmark do MySQL .............................................................................302
5.1.5. Utilizando seus Próprios Benchmarks ...........................................................................303
5.2. Otimizando SELECTs e Outras Consultas ................................................................................303
5.2.1. Sintaxe de EXPLAIN (Obter informações sobre uma SELECT) ............................................304
5.2.2. Estimando o Desempenho de uma Consulta ....................................................................309
5.2.3. Velocidade das Consultas que Utilizam SELECT .............................................................310
5.2.4. Como o MySQL Otimiza Cláusulas WHERE ...................................................................310
5.2.5. Como o MySQL Otimiza IS NULL ............................................................................311
5.2.6. Como o MySQL Otimiza Cláusulas DISTINCT ..............................................................312
5.2.7. Como o MySQL Otimiza LEFT JOIN e RIGHT JOIN ....................................................312
5.2.8. Como o MySQL Otimiza Cláusulas ORDER BY ..............................................................313
5.2.9. Como o MySQL Otimiza Cláusulas LIMIT ...................................................................314
5.2.10. Performance das Consultas que Utilizam INSERT ..........................................................314
5.2.11. Performance das Consultas que Utilizam UPDATE ..........................................................316
5.2.12. Performance das Consultas que Utilizam DELETE ..........................................................316
5.2.13. Mais Dicas sobre Otimizações ..................................................................................316
5.3. Detalhes sobre Locks .........................................................................................................318
5.3.1. Como o MySQL Trava as Tabelas ...............................................................................318
5.3.2. Detalhes sobre Lock de Tabelas ..................................................................................319
5.4. Otimizando a Estrutura de Banco de Dados ...............................................................................320
5.4.1. Opções do Projeto ..................................................................................................320
5.4.2. Deixando os Dados com o Menor Tamanho Possível .........................................................320
5.4.3. Como o MySQL Utiliza Índices ..................................................................................321
5.4.4. Índices de Colunas .................................................................................................323
5.4.5. Índices de Múltiplas Colunas .....................................................................................323
5.4.6. Como o MySQL Conta as Tabelas Abertas .....................................................................324
5.4.7. Como o MySQL Abre e Fecha as Tabelas ......................................................................324
5.4.8. Desvantagem em Criar um Número Grande de Tabelas no Mesmo Banco de Dados ....................325
5.5. Otimizando o Servidor MySQL ............................................................................................325
5.5.1. Sintonia dos Parâmetros em Tempo de Sistema/Compilação e na Inicialização ...........................325
5.5.2. Parâmetros de Sintonia do Servidor ..............................................................................325
5.5.3. Como a Compilação e a Ligação Afetam a Velocidade do MySQL ........................................327
5.5.4. Como o MySQL Utiliza a Memória .............................................................................328
5.5.5. Como o MySQL Utiliza o DNS ..................................................................................329
5.5.6. Sintaxe de SET ......................................................................................................329
5.6. Detalhes de Disco .............................................................................................................333
5.6.1. Utilizando Links Simbólicos ......................................................................................333
6. Referência de Linguagem do MySQL ...............................................................................................336
6.1. Estrutura da Linguagem ......................................................................................................336
6.1.1. Literais: Como Gravar Strings e Numerais .....................................................................336
6.1.2. Nomes de Banco de dados, Tabela, Índice, Coluna e Alias ..................................................338
6.1.3. Caso Sensitivo nos Nomes ........................................................................................339
6.1.4. Variáveis de Usuário ...............................................................................................340
6.1.5. Variáveis de Sistema ...............................................................................................341
6.1.6. Sintaxe de Comentários ............................................................................................343
6.1.7. Tratamento de Palavras Reservadas no MySQL ...............................................................344
6.2. Tipos de Campos ..............................................................................................................346
6.2.1. Tipos Numéricos ....................................................................................................350
6.2.2. Tipos de Data e Hora ...............................................................................................351
6.2.3. Tipos String .........................................................................................................356
6.2.4. Escolhendo o Tipo Correto para uma Coluna ..................................................................360
6.2.5. Usando Tipos de Colunas de Outros Mecanismos de Banco de Dados .....................................360
6.2.6. Exigências de Armazenamento dos Tipos de Coluna .........................................................360
6.3. Funções para Uso em Cláusulas SELECT e WHERE .....................................................................362
6.3.1. Operadores e Funções de Tipos não Especificados ............................................................362
6.3.2. Funções String ......................................................................................................368
6.3.3. Funções Numéricas .................................................................................................377
6.3.4. Funções de Data e Hora ...........................................................................................383
Manual de Referência do MySQL 4.1
vii
6.3.5. Funções de Conversão .............................................................................................396
6.3.6. Outras Funções ......................................................................................................398
6.3.7. Funções e Modificadores para Usar com Cláusulas GROUP BY ............................................406
6.4. Manipulação de Dados: SELECT, INSERT, UPDATE e DELETE ....................................................411
6.4.1. Sintaxe SELECT ....................................................................................................411
6.4.2. Sintaxe de Subquery ...............................................................................................416
6.4.3. Sintaxe INSERT ....................................................................................................423
6.4.4. Sintaxe UPDATE ....................................................................................................427
6.4.5. Sintaxe DELETE ....................................................................................................428
6.4.6. Sintaxe TRUNCATE ................................................................................................429
6.4.7. Sintaxe REPLACE ..................................................................................................429
6.4.8. Sintaxe LOAD DATA INFILE ..................................................................................430
6.4.9. Sintaxe HANDLER ..................................................................................................435
6.4.10. Sintaxe DO .........................................................................................................436
6.5. Definição de Dados: CREATE, DROP e ALTER ..........................................................................436
6.5.1. Sintaxe CREATE DATABASE ....................................................................................436
6.5.2. Sintaxe DROP DATABASE .......................................................................................437
6.5.3. Sintaxe CREATE TABLE .........................................................................................437
6.5.4. Sintaxe ALTER TABLE ...........................................................................................444
6.5.5. Sintaxe RENAME TABLE .........................................................................................446
6.5.6. Sintaxe DROP TABLE .............................................................................................447
6.5.7. Sintaxe CREATE INDEX .........................................................................................447
6.5.8. Sintaxe DROP INDEX .............................................................................................448
6.6. Comandos Utilitários Básicos do Usuário MySQL ......................................................................448
6.6.1. Sintaxe USE .........................................................................................................448
6.6.2. Sintaxe DESCRIBE (Obtem Informações Sobre Colunas) ...................................................448
6.7. Comandos Transacionais e de Lock do MySQL .........................................................................448
6.7.1. Sintaxe de START TRANSACTION, COMMIT e ROLLBACK ...............................................448
6.7.2. Instruções que Não Podem Ser Desfeitas .......................................................................449
6.7.3. Instruções que Fazem um Commit Implicito ...................................................................449
6.7.4. Sintaxe de SAVEPOINT e ROLLBACK TO SAVEPOINT ..................................................449
6.7.5. Sintaxe LOCK TABLES e UNLOCK TABLES ................................................................450
6.7.6. Sintaxe SET TRANSACTION ....................................................................................451
6.8. Pesquisa Full-text no MySQL ...............................................................................................452
6.8.1. Restrições Full-text .................................................................................................454
6.8.2. Ajuste Fino de Pesquisas Full-text no MySQL .................................................................455
6.8.3. TODO de Pesquisas Full-text .....................................................................................455
6.9. Cache de Consultas do MySQL .............................................................................................456
6.9.1. Como a Cache de Consultas Opera ..............................................................................456
6.9.2. Configuração da Cache de Consultas ............................................................................457
6.9.3. Opções da Cache de Consultas na SELECT ....................................................................458
6.9.4. Estado e Manutenção da Cache de Consultas ..................................................................458
7. Tipos de Tabela do MySQL ...........................................................................................................460
7.1. Tabelas MyISAM ..............................................................................................................460
7.1.1. Espaço Necessário para Chaves ..................................................................................462
7.1.2. Formatos de Tabelas MyISAM ....................................................................................462
7.1.3. Problemas com Tabelas MyISAM ................................................................................464
7.2. Tabelas MERGE ...............................................................................................................465
7.2.1. Problemas com Tabelas MERGE ..................................................................................467
7.3. Tabelas ISAM .................................................................................................................468
7.4. Tabelas HEAP .................................................................................................................468
7.5. Tabelas InnoDB ..............................................................................................................469
7.5.1. Visão Geral de Tabelas InnoDB ..................................................................................469
7.5.2. InnoDB no MySQL Versão 3.23 .................................................................................470
7.5.3. Opções de Inicialização do InnoDB .............................................................................470
7.5.4. Criando Tablespaces no InnoDB .................................................................................474
7.5.5. Criando Tabelas InnoDB ..........................................................................................475
7.5.6. Adicionando e Removendo Arquivos de Dados e Log do InnoDB ..........................................478
7.5.7. Fazendo Backup e Recuperando um Banco de Dados InnoDB ..............................................479
7.5.8. Movendo um Banco de Dados InnoDB para Outra Máquina ................................................480
7.5.9. Modelo Transacional do InnoDB .................................................................................481
7.5.10. Dicas de Ajuste de Desempenho ................................................................................485
7.5.11. Implementação de Multi-versioning ............................................................................488
7.5.12. Estrutura de Tabelas e Índices ...................................................................................488
7.5.13. Gerenciamento do Espaço de Arquivos e E/S de Disco .....................................................490
7.5.14. Tratando Erros .....................................................................................................491
7.5.15. Restrições em Tabelas InnoDB .................................................................................491
7.5.16. Histórico de Alterações do InnoDB ............................................................................492
7.5.17. Informações de Contato do InnoDB ...........................................................................505
7.6. Tabelas BDB ou BerkeleyDB .............................................................................................505
Manual de Referência do MySQL 4.1
viii
7.6.1. Visão Geral de Tabelas BDB ......................................................................................505
7.6.2. Instalando BDB ......................................................................................................506
7.6.3. Opções de Inicialização do BDB ..................................................................................506
7.6.4. Características de Tabelas BDB: ..................................................................................506
7.6.5. Itens a serem corrigidos no BDB num futuro próximo: ........................................................507
7.6.6. Sistemas operacionais suportados pelo BDB ....................................................................508
7.6.7. Restrições em Tabelas BDB .......................................................................................508
7.6.8. Erros Que Podem Ocorrer Usando Tabelas BDB ...............................................................508
8. Introdução ao MaxDB ..................................................................................................................510
8.1. Historia do MaxDB ...........................................................................................................510
8.2. Licenciamento e Suporte .....................................................................................................510
8.3. Conceitos Básicos do MaxDB ..............................................................................................510
8.4. Diferenças de Recursos entre o MaxDB e o MySQL ....................................................................510
8.5. Interoperability Features between MaxDB and MySQL ................................................................511
8.6. Links Relacionados ao MaxDB .............................................................................................511
8.7. Palavras Reservadas no MaxDB ............................................................................................511
9. Conjunto de Caracteres Nacionais e Unicode .......................................................................................514
9.1. Conjuntos de Caracteres e Collations em Geral ..........................................................................514
9.2. Conjunto de Caracteres e Collations no MySQL .........................................................................514
9.3. Determinando o Conjunto de Caracteres e Collation Padrões ..........................................................515
9.3.1. Conjunto de Caracteres e Collations do Servidor ..............................................................515
9.3.2. Conjunto de Caracteres e Collation de Banco de Dados ......................................................515
9.3.3. O Conjunto de Caracteres e Collations de Tabela ..............................................................516
9.3.4. Conjunto de Caracteres e Collation de Colunas ................................................................516
9.3.5. Exemplos de Atribuições de Conjuntos de Caracteres e Collation ..........................................517
9.3.6. Conjunto de Caracteres e Collation de Conexão ...............................................................517
9.3.7. Conjunto de Caracteres e Collation de Caracter de String Literal ...........................................518
9.3.8. Cláusula COLLATE em Várias Partes de uma Consulta SQL ................................................519
9.3.9. Precedência da Cláusula COLLATE ..............................................................................519
9.3.10. Operador BINARY ................................................................................................520
9.3.11. Alguns Casos Especiais Onde a Determinação da Collation e Trabalhosa ................................520
9.3.12. Collations Devem Ser para o Conjunto de Caracteres Certo ................................................520
9.3.13. Um exemplo do Efeito da Collation ............................................................................521
9.4. Operações Afetadas pelo Suporte a Conjunto de Caracteres ...........................................................521
9.4.1. Strings de Resultados ..............................................................................................521
9.4.2. CONVERT() ........................................................................................................522
9.4.3. CAST() .............................................................................................................522
9.4.4. SHOW CHARACTER SET ........................................................................................522
9.4.5. SHOW COLLATION ...............................................................................................522
9.4.6. SHOW CREATE DATABASE ....................................................................................523
9.4.7. SHOW FULL COLUMNS ..........................................................................................523
9.5. Suporte Unicode ..............................................................................................................523
9.6. UTF8 para Metdados .........................................................................................................524
9.7. Compatibilidade com Outros SGBDs ......................................................................................524
9.8. Novo Formato do Arquivo de Configuração do Conjunto de Caracteres .............................................524
9.9. Conjunto de Caracteres Nacional ...........................................................................................524
9.10. Atualizando para o MySQL 4.0 ...........................................................................................525
9.10.1. Conjunto de Caracteres do MySQL e o Par/Conjunto de Caracter/Collation Correspondente do MySQL
4.1 ............................................................................................................................525
9.11. Os conjuntos de Caracteres e Collations que o MySQL Suporta .....................................................526
9.11.1. O Conjunto de Caracteres Unicode .............................................................................527
9.11.2. Conjunto de Caracteres para Plataformas Específicas .......................................................527
9.11.3. Conjunto de Caracteres do Sul da Europa e Oriente Médio .................................................527
9.11.4. Os Conjuntos de Caracteres Asiáticos .........................................................................527
9.11.5. Os Conjuntos de Caracteres Bálticos ...........................................................................527
9.11.6. Os Conjuntos de Caracteres Cirílicos ..........................................................................528
9.11.7. O Conjunto de Caracteres da Europa Central .................................................................528
9.11.8. Os Conjuntos de Caracteres da Europa Ocidental ............................................................529
10. Extensões Espacias em MySQL .....................................................................................................531
10.1. Introdução ....................................................................................................................531
10.2. O Modelo Geomátrico OpenGIS ..........................................................................................531
10.2.1. A Hierarquia da Classe Geometry ............................................................................532
10.2.2. Classe Geometry ................................................................................................532
10.2.3. Classe Point .....................................................................................................533
10.2.4. Classe Curve .....................................................................................................534
10.2.5. Classe LineString ............................................................................................534
10.2.6. Classe Surface ..................................................................................................534
10.2.7. Classe Polygon ..................................................................................................534
10.2.8. Classe GeometryCollection ..............................................................................535
10.2.9. Classe MultiPoint ............................................................................................535
Manual de Referência do MySQL 4.1
ix
10.2.10. Classe MultiCurve ...........................................................................................535
10.2.11. Classe MultiLineString (Multi Linhas) ...............................................................536
10.2.12. Classe MultiSurface (Multi Superfícies) ...............................................................536
10.2.13. Classe MultiPolygon (Multi Polígonos) .................................................................536
10.3. Formatos de Dados Espaciais Suportados ...............................................................................537
10.3.1. Formato Well-Known Text (WKT) ............................................................................537
10.3.2. Formato Well-Known Binary (WKB) ..........................................................................537
10.4. Criando um Banco de Dados MySQL Habilitado Espacialmente ....................................................538
10.4.1. Tipos de Dados Espaciais do MySQL ..........................................................................538
10.4.2. Criando Valores Espaciais .......................................................................................538
10.4.3. Criando Colunas Espaciais ......................................................................................541
10.4.4. Entrando com Dados em Colunas Espaciais ..................................................................541
10.4.5. Buscando Dados Espaciais ......................................................................................542
10.5. Analisando Informação Espacial ..........................................................................................543
10.5.1. Funções Para Converter Geometrias Entre Formatos Diferentes ...........................................543
10.5.2. Funções de Análise das Propriedades de Geometry .......................................................544
10.5.3. Funções Que Criam Novas Geometrias de Outras Existentes ..............................................549
10.5.4. Funções Para Testar Relações Espaciais Entre Objetos Geométricos .....................................550
10.5.5. Relações de Retângulo de Limite Mínimo (Minimal Bounding Rectangles - MBR) em Geometrias .550
10.5.6. Funções que Testam Relacionamentos Espaciais Entre Geometrias .......................................551
10.6. Otimizando Análises Espaciais ............................................................................................552
10.6.1. Criando Índices Espaciais ........................................................................................552
10.6.2. Usando Índice Espacial ..........................................................................................553
10.7. Compatibilidade e Conformidade com o MySQL ......................................................................554
10.7.1. Recursos GIS Que Ainda Não Estão Implementados ........................................................554
11. Stored Procedures e Funções .........................................................................................................555
11.1. Sintaxe de Stored Procedure ...............................................................................................555
11.1.1. Manutenção de Stored Procedures ..............................................................................555
11.1.2. SHOW PROCEDURE STATUS e SHOW FUNCTION STATUS ..........................................557
11.1.3. CALL ................................................................................................................557
11.1.4. BEGIN ... END Compound Statement .....................................................................557
11.1.5. Instrução DECLARE ..............................................................................................558
11.1.6. Variables in Stored Procedures ..................................................................................558
11.1.7. Condições e Handlers ............................................................................................558
11.1.8. Cursors .............................................................................................................559
11.1.9. Flow Control Constructs .........................................................................................560
12. Ferramentas de Clientes e APIs do MySQL .......................................................................................563
12.1. API C do MySQL ...........................................................................................................563
12.1.1. Tipos de Dados da API C ........................................................................................563
12.1.2. Visão Geral das Função da API C ..............................................................................565
12.1.3. Descrição das Funções da API C ...............................................................................568
12.1.4. Instruções Preparadas da API C .................................................................................599
12.1.5. Tipos de Dados de Instruções Preparadas da API C .........................................................599
12.1.6. Visão Geral das Funções de Instruções Preparadas da API C ..............................................601
12.1.7. Descrição das Funções de Instrução Preparada da API C ...................................................603
12.1.8. Tratando a Execução de Múltiplas Consultas na API C .....................................................616
12.1.9. Manipulando Valores de Data e Hora na API C ..............................................................617
12.1.10. Descrição das Funções de Threads da API C ................................................................618
12.1.11. Descrição das Funções do Servidor Embutido da API C ..................................................619
12.1.12. Dúvidas e problemas comuns ao utilzar a API C ...........................................................619
12.1.13. Construindo Programas Clientes ..............................................................................621
12.1.14. Como Fazer um Cliente em Threads ..........................................................................621
12.1.15. libmysqld, a Biblioteca do Servidor Embutido MySQL ...................................................622
12.2. Suporte ODBC ao MySQL ................................................................................................625
12.2.1. Como Instalar o MyODBC ......................................................................................626
12.2.2. Como Preencher os Vários Campos no Programa de Administração do ODBC .........................626
12.2.3. Parâmetros de Conexão do MyODBC .........................................................................627
12.2.4. Como Relatar Problemas com o MyODBC ...................................................................628
12.2.5. Programas que Funcionam com MyODBC ...................................................................628
12.2.6. Como Obter o Valor de uma Coluna AUTO_INCREMENT no ODBC ....................................632
12.2.7. Relatando Problemas com MyODBC ..........................................................................632
12.3. Conectividade Java (JDBC) ao MySQL .................................................................................633
12.4. API PHP do MySQL ........................................................................................................633
12.4.1. Problemas Comuns com MySQL e PHP ......................................................................633
12.5. API Perl do MySQL ........................................................................................................633
12.5.1. DBI com DBD::mysql .........................................................................................634
12.5.2. A interface DBI ...................................................................................................634
12.5.3. Mais Informações DBI/DBD .....................................................................................640
12.6. API C++ do MySQL ........................................................................................................640
12.6.1. Borland C++ .......................................................................................................640
Manual de Referência do MySQL 4.1
x
12.7. API Python do MySQL .....................................................................................................640
12.8. API Tcl do MySQL .........................................................................................................640
12.9. Eiffel Wrapper do MySQL .................................................................................................640
13. Tratamento de Erros no MySQL ....................................................................................................641
13.1. Erros Retornados ............................................................................................................641
14. Estendendo o MySQL ................................................................................................................662
14.1. MySQL Internals ............................................................................................................662
14.1.1. Threads MySQL ...................................................................................................662
14.1.2. Pacotes de Teste do MySQL ....................................................................................662
14.2. Adicionando Novas Funções ao MySQL ................................................................................664
14.2.1. Sintaxe CREATE FUNCTION/DROP FUNCTION .........................................................664
14.2.2. Adicionando Novas Funções Definidas Por Usuário .........................................................665
14.2.3. Adicionando uma Nova Função Nativa ........................................................................671
14.3. Adicionado Novos Procedimentos ao MySQL ..........................................................................671
14.3.1. Análise de Procedimento .........................................................................................672
14.3.2. Escrevendo um Procedimento ...................................................................................672
A. Problemas e Erros Comuns ...........................................................................................................673
A.1. Como Determinar o Que Está Causando Problemas ....................................................................673
A.2. Erros Comuns Usando o MySQL ..........................................................................................674
A.2.1. Erro: Access Denied .........................................................................................674
A.2.2. Erro: MySQL server has gone away ..................................................................674
A.2.3. Erro: Can't connect to [local] MySQL server ..............................................675
A.2.4. Erro: Client does not support authentication protocol ............................676
A.2.5. Erro: Host '...' is blocked ...........................................................................676
A.2.6. Erro: Too many connections .............................................................................677
A.2.7. Erro: Some non-transactional changed tables couldn't be rolled back ...677
A.2.8. Erro: Out of memory .........................................................................................677
A.2.9. Erro: Packet too large ....................................................................................677
A.2.10. Erros de Comunicação / Comunicação Abortada ............................................................678
A.2.11. Erro: The table is full .................................................................................679
A.2.12. Erro: Can't create/write to file ................................................................679
A.2.13. Erro no Cliente: Commands out of sync ..............................................................679
A.2.14. Erro: Ignoring user ........................................................................................679
A.2.15. Erro: Table 'xxx' doesn't exist ..................................................................680
A.2.16. Erro: Can't initialize character set xxx ..................................................680
A.2.17. Arquivo Não Encontrado ........................................................................................680
A.3. Assuntos Relacionados a Instalação .......................................................................................681
A.3.1. Problemas de Ligação com a Biblioteca do Cliente MySQL ................................................681
A.3.2. Como Executar o MySQL Como Um Usuário Normal .......................................................682
A.3.3. Problemas com Permissões de Arquivos .......................................................................682
A.4. Assuntos Relacionados a Administração .................................................................................683
A.4.1. O Que Fazer Se o MySQL Continua Falhando ................................................................683
A.4.2. Como Recuperar uma Senha de Root Esquecida ..............................................................684
A.4.3. Como o MySQL Trata de Discos Sem Espaço ................................................................685
A.4.4. Onde o MySQL Armazena Arquivos Temporários ...........................................................686
A.4.5. Como Proteger ou AlterarHow to Protect or Change the MySQL Socket File /tmp/mysql.sock 686
A.4.6. Problemas Com Fuso Horário ....................................................................................687
A.5. Assuntos Relacionados a Consultas .......................................................................................687
A.5.1. Caso-Sensitivito em Pesquisas ...................................................................................687
A.5.2. Problemas Usando Colunas DATE ..............................................................................687
A.5.3. Problemas com Valores NULL ...................................................................................688
A.5.4. Problemas com alias ...........................................................................................689
A.5.5. Deletando Linhas de Tabelas Relacionadas ....................................................................689
A.5.6. Resolvendo Problemas Com Registros Não Encontrados ....................................................689
A.5.7. Problemas com Comparação de Ponto Flutuante ..............................................................690
A.6. Assuntos Relacionados ao Otimizador ....................................................................................691
A.6.1. Camo evitar o varredura da tabela,,, .............................................................................691
A.7. Assuntos Relacionados a Definições de Tabelas ........................................................................692
A.7.1. Problemas com ALTER TABLE. ................................................................................692
A.7.2. Como Alterar a Ordem das Colunas em Uma Tabela .........................................................692
A.7.3. Problemas com TEMPORARY TABLE .......................................................................693
B. Contribuição de Programas ...........................................................................................................694
B.1. APIs ............................................................................................................................694
B.2. Conversores ...................................................................................................................695
B.3. Utilitários ......................................................................................................................696
C. Colaboradores do MySQL ............................................................................................................698
C.1. Desenvolvedores do MySQL ...............................................................................................698
C.2. Coolaboradores do MySQL .................................................................................................701
C.3. Responsáveis pela Documentação e Tradução ...........................................................................705
C.4. Bibliotecas usadas e incluidas com o MySQL ...........................................................................706
Manual de Referência do MySQL 4.1
xi
C.5. Pacotes que suportam o MySQL ...........................................................................................707
C.6. Ferramentas que são usadas para criar o MySQL ........................................................................707
C.7. Responsáveis pelo Suporte do MySQL ...................................................................................708
D. Histórico de Alterações do MySQL .................................................................................................709
D.1. Alterações na distribuição 5.0.0 (Development) .........................................................................709
D.2. Alterações na distribuição 4.1.x (Alpha) ..................................................................................709
D.2.1. Alterações na distribuição 4.1.2 (not released yet) ............................................................710
D.2.2. Alterações na distribuição 4.1.1 (01 de Dez de 2003) ........................................................710
D.2.3. Alterações na distribuição 4.1.0 (03 Apr 2003: Alpha) .......................................................714
D.3. Alterações na distribuição 4.0.x (Production) ............................................................................715
D.3.1. Alterações na distribuição 4.0.17 (not released yet) ..........................................................716
D.3.2. Alterações na distribuição 4.0.16 (17 Out 2003) ..............................................................717
D.3.3. Alterações na distribuição 4.0.15 (03 Sep 2003) ..............................................................719
D.3.4. Alterações na distribuição 4.0.14 (18 Jul 2003) ...............................................................722
D.3.5. Alterações na distribuição 4.0.13 (16 May 2003) .............................................................724
D.3.6. Alterações na distribuição 4.0.12 (15 Mar 2003: Production) ...............................................727
D.3.7. Alterações na distribuição 4.0.11 (20 Feb 2003) ..............................................................728
D.3.8. Alterações na distribuição 4.0.10 (29 Jan 2003) ...............................................................729
D.3.9. Alterações na distribuição 4.0.9 (09 Jan 2003) ................................................................730
D.3.10. Alterações na distribuição 4.0.8 (07 Jan 2003) ...............................................................731
D.3.11. Alterações na distribuição 4.0.7 (20 Dec 2002) ..............................................................731
D.3.12. Alterações na distribuição 4.0.6 (14 Dec 2002: Gamma) ...................................................732
D.3.13. Alterações na distribuição 4.0.5 (13 Nov 2002) ..............................................................733
D.3.14. Alterações na distribuição 4.0.4 (29 Sep 2002) ..............................................................734
D.3.15. Alterações na distribuição 4.0.3 (26 Aug 2002: Beta) .......................................................736
D.3.16. Alterações na distribuição 4.0.2 (01 Jul 2002) ...............................................................737
D.3.17. Alterações na distribuição 4.0.1 (23 Dec 2001) ..............................................................741
D.3.18. Alterações na distribuição 4.0.0 (Oct 2001: Alpha) .........................................................741
D.4. Alterações na distribuição 3.23.x (Recent; still supported) .............................................................743
D.4.1. Alterações na distribuição 3.23.59 (not released yet) .........................................................743
D.4.2. Alterações na distribuição 3.23.58 (11 Sep 2003) .............................................................744
D.4.3. Alterações na distribuição 3.23.57 (06 Jun 2003) .............................................................744
D.4.4. Alterações na distribuição 3.23.56 (13 Mar 2003) ............................................................745
D.4.5. Alterações na distribuição 3.23.55 (23 Jan 2003) .............................................................746
D.4.6. Alterações na distribuição 3.23.54 (05 Dec 2002) ............................................................746
D.4.7. Alterações na distribuição 3.23.53 (09 Oct 2002) .............................................................747
D.4.8. Alterações na distribuição 3.23.52 (14 Aug 2002) ............................................................747
D.4.9. Alterações na distribuição 3.23.51 (31 May 2002) ............................................................748
D.4.10. Alterações na distribuição 3.23.50 (21 Apr 2002) ...........................................................749
D.4.11. Alterações na distribuição 3.23.49 .............................................................................749
D.4.12. Alterações na distribuição 3.23.48 (07 Feb 2002) ...........................................................750
D.4.13. Alterações na distribuição 3.23.47 (27 Dec 2001) ...........................................................750
D.4.14. Alterações na distribuição 3.23.46 (29 Nov 2001) ...........................................................751
D.4.15. Alterações na distribuição 3.23.45 (22 Nov 2001) ...........................................................751
D.4.16. Alterações na distribuição 3.23.44 (31 Oct 2001) ...........................................................751
D.4.17. Alterações na distribuição 3.23.43 (04 Oct 2001) ...........................................................752
D.4.18. Alterações na distribuição 3.23.42 (08 Sep 2001) ...........................................................753
D.4.19. Alterações na distribuição 3.23.41 (11 Aug 2001) ...........................................................753
D.4.20. Alterações na distribuição 3.23.40 .............................................................................754
D.4.21. Alterações na distribuição 3.23.39 (12 Jun 2001) ............................................................754
D.4.22. Alterações na distribuição 3.23.38 (09 May 2001) ..........................................................755
D.4.23. Alterações na distribuição 3.23.37 (17 Apr 2001) ...........................................................756
D.4.24. Alterações na distribuição 3.23.36 (27 Mar 2001) ...........................................................756
D.4.25. Alterações na distribuição 3.23.35 (15 Mar 2001) ...........................................................757
D.4.26. Alterações na distribuição 3.23.34a ............................................................................757
D.4.27. Alterações na distribuição 3.23.34 (10 Mar 2001) ...........................................................757
D.4.28. Alterações na distribuição 3.23.33 (09 Feb 2001) ...........................................................758
D.4.29. Alterações na distribuição 3.23.32 (22 Jan 2001: Production) .............................................759
D.4.30. Alterações na distribuição 3.23.31 (17 Jan 2001) ............................................................759
D.4.31. Alterações na distribuição 3.23.30 (04 Jan 2001) ............................................................760
D.4.32. Alterações na distribuição 3.23.29 (16 Dec 2000) ...........................................................761
D.4.33. Alterações na distribuição 3.23.28 (22 Nov 2000: Gamma) ................................................762
D.4.34. Alterações na distribuição 3.23.27 (24 Oct 2000) ...........................................................763
D.4.35. Alterações na distribuição 3.23.26 (18 Oct 2000) ...........................................................764
D.4.36. Alterações na distribuição 3.23.25 (29 Sep 2000) ...........................................................764
D.4.37. Alterações na distribuição 3.23.24 (08 Sep 2000) ...........................................................765
D.4.38. Alterações na distribuição 3.23.23 (01 Sep 2000) ...........................................................766
D.4.39. Alterações na distribuição 3.23.22 (31 Jul 2000) ............................................................767
D.4.40. Alterações na distribuição 3.23.21 .............................................................................767
D.4.41. Alterações na distribuição 3.23.20 .............................................................................768
Manual de Referência do MySQL 4.1
xii
D.4.42. Alterações na distribuição 3.23.19 .............................................................................768
D.4.43. Alterações na distribuição 3.23.18 .............................................................................768
D.4.44. Alterações na distribuição 3.23.17 .............................................................................769
D.4.45. Alterações na distribuição 3.23.16 .............................................................................769
D.4.46. Alterações na distribuição 3.23.15 (May 2000: Beta) .......................................................770
D.4.47. Alterações na distribuição 3.23.14 .............................................................................771
D.4.48. Alterações na distribuição 3.23.13 .............................................................................771
D.4.49. Alterações na distribuição 3.23.12 (07 Mar 2000) ...........................................................771
D.4.50. Alterações na distribuição 3.23.11 .............................................................................772
D.4.51. Alterações na distribuição 3.23.10 .............................................................................772
D.4.52. Alterações na distribuição 3.23.9 ...............................................................................773
D.4.53. Alterações na distribuição 3.23.8 (02 Jan 2000) .............................................................773
D.4.54. Alterações na distribuição 3.23.7 (10 Dec 1999) ............................................................774
D.4.55. Alterações na distribuição 3.23.6 ...............................................................................774
D.4.56. Alterações na distribuição 3.23.5 (20 Oct 1999) .............................................................775
D.4.57. Alterações na distribuição 3.23.4 (28 Sep 1999) .............................................................776
D.4.58. Alterações na distribuição 3.23.3 ...............................................................................776
D.4.59. Alterações na distribuição 3.23.2 (09 Aug 1999) ............................................................777
D.4.60. Alterações na distribuição 3.23.1 ...............................................................................777
D.4.61. Alterações na distribuição 3.23.0 (05 Aug 1999: Alpha) ...................................................778
D.5. Alterações na distribuição 3.22.x (Old; discontinued) ..................................................................779
D.5.1. Alterações na distribuição 3.22.35 ...............................................................................779
D.5.2. Alterações na distribuição 3.22.34 ...............................................................................780
D.5.3. Alterações na distribuição 3.22.33 ...............................................................................780
D.5.4. Alterações na distribuição 3.22.32 (14 Feb 2000) .............................................................780
D.5.5. Alterações na distribuição 3.22.31 ...............................................................................780
D.5.6. Alterações na distribuição 3.22.30 ...............................................................................780
D.5.7. Alterações na distribuição 3.22.29 (02 Jan 2000) .............................................................780
D.5.8. Alterações na distribuição 3.22.28 (20 Oct 1999) .............................................................781
D.5.9. Alterações na distribuição 3.22.27 ...............................................................................781
D.5.10. Alterações na distribuição 3.22.26 (16 Sep 1999) ...........................................................781
D.5.11. Alterações na distribuição 3.22.25 .............................................................................781
D.5.12. Alterações na distribuição 3.22.24 (05 Jul 1999) ............................................................781
D.5.13. Alterações na distribuição 3.22.23 (08 Jun 1999) ............................................................782
D.5.14. Alterações na distribuição 3.22.22 (30 Apr 1999) ...........................................................782
D.5.15. Alterações na distribuição 3.22.21 .............................................................................782
D.5.16. Alterações na distribuição 3.22.20 (18 Mar 1999) ...........................................................783
D.5.17. Alterações na distribuição 3.22.19 (Mar 1999: Production) ................................................783
D.5.18. Alterações na distribuição 3.22.18 .............................................................................783
D.5.19. Alterações na distribuição 3.22.17 .............................................................................783
D.5.20. Alterações na distribuição 3.22.16 (Feb 1999: Gamma) ....................................................783
D.5.21. Alterações na distribuição 3.22.15 .............................................................................783
D.5.22. Alterações na distribuição 3.22.14 .............................................................................784
D.5.23. Alterações na distribuição 3.22.13 .............................................................................784
D.5.24. Alterações na distribuição 3.22.12 .............................................................................784
D.5.25. Alterações na distribuição 3.22.11 .............................................................................785
D.5.26. Alterações na distribuição 3.22.10 .............................................................................785
D.5.27. Alterações na distribuição 3.22.9 ...............................................................................786
D.5.28. Alterações na distribuição 3.22.8 ...............................................................................786
D.5.29. Alterações na distribuição 3.22.7 (Sep 1998: Beta) .........................................................787
D.5.30. Alterações na distribuição 3.22.6 ...............................................................................787
D.5.31. Alterações na distribuição 3.22.5 ...............................................................................787
D.5.32. Alterações na distribuição 3.22.4 ...............................................................................788
D.5.33. Alterações na distribuição 3.22.3 ...............................................................................789
D.5.34. Alterações na distribuição 3.22.2 ...............................................................................789
D.5.35. Alterações na distribuição 3.22.1 (Jun 1998: Alpha) ........................................................790
D.5.36. Alterações na distribuição 3.22.0 ...............................................................................790
D.6. Alterações na distribuição 3.21.x ..........................................................................................791
D.6.1. Alterações na distribuição 3.21.33 ...............................................................................791
D.6.2. Alterações na distribuição 3.21.32 ...............................................................................791
D.6.3. Alterações na distribuição 3.21.31 ...............................................................................792
D.6.4. Alterações na distribuição 3.21.30 ...............................................................................792
D.6.5. Alterações na distribuição 3.21.29 ...............................................................................792
D.6.6. Alterações na distribuição 3.21.28 ...............................................................................793
D.6.7. Alterações na distribuição 3.21.27 ...............................................................................793
D.6.8. Alterações na distribuição 3.21.26 ...............................................................................793
D.6.9. Alterações na distribuição 3.21.25 ...............................................................................794
D.6.10. Alterações na distribuição 3.21.24 .............................................................................794
D.6.11. Alterações na distribuição 3.21.23 .............................................................................794
D.6.12. Alterações na distribuição 3.21.22 .............................................................................795
Manual de Referência do MySQL 4.1
xiii
D.6.13. Alterações na distribuição 3.21.21a ............................................................................795
D.6.14. Alterações na distribuição 3.21.21 .............................................................................795
D.6.15. Alterações na distribuição 3.21.20 .............................................................................795
D.6.16. Alterações na distribuição 3.21.19 .............................................................................796
D.6.17. Alterações na distribuição 3.21.18 .............................................................................796
D.6.18. Alterações na distribuição 3.21.17 .............................................................................796
D.6.19. Alterações na distribuição 3.21.16 .............................................................................797
D.6.20. Alterações na distribuição 3.21.15 .............................................................................797
D.6.21. Alterações na distribuição 3.21.14b ............................................................................797
D.6.22. Alterações na distribuição 3.21.14a ............................................................................797
D.6.23. Alterações na distribuição 3.21.13 .............................................................................798
D.6.24. Alterações na distribuição 3.21.12 .............................................................................798
D.6.25. Alterações na distribuição 3.21.11 .............................................................................799
D.6.26. Alterações na distribuição 3.21.10 .............................................................................799
D.6.27. Alterações na distribuição 3.21.9 ...............................................................................800
D.6.28. Alterações na distribuição 3.21.8 ...............................................................................800
D.6.29. Alterações na distribuição 3.21.7 ...............................................................................800
D.6.30. Alterações na distribuição 3.21.6 ...............................................................................801
D.6.31. Alterações na distribuição 3.21.5 ...............................................................................801
D.6.32. Alterações na distribuição 3.21.4 ...............................................................................801
D.6.33. Alterações na distribuição 3.21.3 ...............................................................................801
D.6.34. Alterações na distribuição 3.21.2 ...............................................................................802
D.6.35. Alterações na distribuição 3.21.0 ...............................................................................802
D.7. Alterações na distribuição 3.20.x ..........................................................................................803
D.7.1. Alterações na distribuição 3.20.18 ...............................................................................803
D.7.2. Alterações na distribuição 3.20.17 ...............................................................................804
D.7.3. Alterações na distribuição 3.20.16 ...............................................................................804
D.7.4. Alterações na distribuição 3.20.15 ...............................................................................805
D.7.5. Alterações na distribuição 3.20.14 ...............................................................................805
D.7.6. Alterações na distribuição 3.20.13 ...............................................................................805
D.7.7. Alterações na distribuição 3.20.11 ...............................................................................806
D.7.8. Alterações na distribuição 3.20.10 ...............................................................................806
D.7.9. Alterações na distribuição 3.20.9 ................................................................................807
D.7.10. Alterações na distribuição 3.20.8 ...............................................................................807
D.7.11. Alterações na distribuição 3.20.7 ...............................................................................807
D.7.12. Alterações na distribuição 3.20.6 ...............................................................................807
D.7.13. Alterações na distribuição 3.20.3 ...............................................................................808
D.7.14. Alterações na distribuição 3.20.0 ...............................................................................809
D.8. Alterações na distribuição 3.19.x ..........................................................................................809
D.8.1. Alterações na distribuição 3.19.5 ................................................................................809
D.8.2. Alterações na distribuição 3.19.4 ................................................................................810
D.8.3. Alterações na distribuição 3.19.3 ................................................................................810
E. Portando para Outros Sistemas .......................................................................................................811
E.1. Depurando um Servidor MySQL ...........................................................................................811
E.1.1. Compilando o MYSQL para Depuração ........................................................................812
E.1.2. Criando Arquivos Trace (Rastreamento) ........................................................................812
E.1.3. Depurando o mysqld no gdb ......................................................................................813
E.1.4. Usando Stack Trace ................................................................................................814
E.1.5. Usando Arquivos de Log para Encontrar a Causa dos Erros no mysqld ....................................814
E.1.6. Fazendo um Caso de Teste Se Ocorre um Corrompimento de Tabela ......................................815
E.2. Depurando um cliente MySQL. ............................................................................................815
E.3. O Pacote DBUG ..............................................................................................................816
E.4. Métodos de Lock .............................................................................................................817
E.5. Comentários Sobre Threads RTS ..........................................................................................818
E.6. Diferença en Entre Alguns Pacotes de Threads ..........................................................................819
F. Variáveis de Ambientes do MySQL .................................................................................................820
G. Sintaxe de Expressões Regulares do MySQL ......................................................................................821
H. GPL - Licença Pública Geral do GNU ..............................................................................................824
Índice Remissivo ...........................................................................................................................828
Manual de Referência do MySQL 4.1
xiv
Preface
Este é o Manual de Referência para o Sistema de Banco de Dados MySQL. Este versão se refere a versão 5.0.6-beta do
MySQL Server mas também se aplica a versões mais antigas (tais como 3.23 e 4.0-produção) já que as alterações são sempre in-
dicadas. Também há referência a versão 5.0 (desenvolvimento).
xv
Capítulo 1. Informações Gerais
O programa MySQL (R) é um servidor robusto de bancos de dados SQL (Structured Query Language - Linguagem
Estruturada para Pesquisas) muito rápido, multi-tarefa e multi-usuário. O Servidor MySQL pode ser usado em sis-
temas de produção com alta carga e missão crítica bem como pode ser embutido em programa de uso em massa. MySQL é uma
marca registrada da MySQL AB.
O programa MySQL é de Licença Dupla. Os usuários podem escolher entre usar o programa MySQL como um produto Open
Source/Free Software sob os termos da GNU General Public License (http://www.fsf.org/licenses/) ou podem
comprar uma licença comercial padrão da MySQL AB. See Secção 1.4, “Suporte e Licenciamento do MySQL”.
O site web do MySQL (http://www.mysql.com/) dispõe das últimas informações sobre o programa MySQL.
A seguinte lista descreve algumas seções de particular interesse neste manual:
• Para informações sobre a empresa por trás do Servidor do Banco de Dados MySQL, veja Secção 1.3, “Visão Geral
da MySQL AB”.
• Para discussões das capacidades do Servidor do Banco de Dados MySQL, veja Secção 1.2.2, “As Principais Caracte-
rísticas do MySQL”.
• Para instruções de instalação, veja Capítulo 2, Instalação do MySQL.
• Para dicas sobre a portabilidade do Servidor do Banco de Dados MySQL para novas arquiteturas ou sistemas opera-
cionais, veja Apêndice E, Portando para Outros Sistemas.
• Para informações sobre a atualização da versão 4.0, veja Secção 2.5.1, “Atualizando da Versão 4.0 para 4.1”.
• Para informações sobre a atualização da versão 3.23, veja Secção 2.5.2, “Atualizando da Versão 3.23 para 4.0”.
• Para informações sobre a atualização da versão 3.22, veja Secção 2.5.3, “Atualizando da versão 3.22 para 3.23”.
• Para um tutorial de introdução ao Servidor do Banco de Dados MySQL, veja Capítulo 3, Tutorial de Introdução Do
MySQL.
• Para exemplos de SQL e informações sobre benchmarks, veja o diretório de benchmarks (sql-bench na distribuição).
• Para o histórico de novos recursos e correções de erros, veja Apêndice D, Histórico de Alterações do MySQL.
• Para uma lista de erros atualmente conhecidos e mal-funcionamento, veja Secção 1.8.6, “Erros Conhecidos e Deficiências de
Projetos no MySQL”.
• Para projetos futuros, veja Secção 1.6, “MySQL e o Futuro (o TODO)”.
• Para ver a lista de todos os colaboradores deste projeto, veja Apêndice C, Colaboradores do MySQL.
Importante:
Relatórios de erros (também chamados bugs), bem como dúvidas e comentários, devem ser enviados para a lista de email geral do
MySQL. See Secção 1.7.1.1, “As Listas de Discussão do MySQL”. See Secção 1.7.1.3, “Como relatar erros ou problemas”.
O script mysqlbug deve ser usado para gerar comunicados de erros no Unix. (A distribuição do Windows contém um arquivo
mysqlbug.txt no diretório base que pode ser usado como um template para um relatório de erro.
Em distribuições fonte, o script mysqlbug pode ser encontrado no diretório scripts. Para distribuições binárias, o mysqlbug
pode ser encontrado no diretório bin (/usr/bin para o pacote RMP do servidor MySQL.
Se você encontrou um erro de segurança no Servidor MySQL, você deve enviar um email para <security@mysql.com>.
1.1. Sobre Este Manual
Este é o manual de referência MySQL; ele documenta o MySQL até a versão 5.0.6-beta. Mudanças funcionais são sempre indicadas
com referência a versão, assim este manual também pode ser utilizado caso você esteja utilizando uma versão mais antiga do
MySQL (como 3.23 ou 4.0-produção). Também a referências a versão 5.0 (desenvolvimento).
Sendo um manual de referência, ele não fornece instruções gerais sobre SQL ou conceitos de banco de dados relacionais.
Como o Programa da Banco de Dados MySQL está sob constante desenvolvimento, o manual também é atualizado fre-
1
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4
Refman 4.1-pt.a4

Mais conteúdo relacionado

Mais procurados

Otimizando a segurança, o desempenho e a disponibilidade com o MySQL Enterpri...
Otimizando a segurança, o desempenho e a disponibilidade com o MySQL Enterpri...Otimizando a segurança, o desempenho e a disponibilidade com o MySQL Enterpri...
Otimizando a segurança, o desempenho e a disponibilidade com o MySQL Enterpri...MySQL Brasil
 
Replicação MySQL e PHP
Replicação MySQL e PHPReplicação MySQL e PHP
Replicação MySQL e PHPMySQL Brasil
 
Arquiteturas de referência MySQL
Arquiteturas de referência MySQLArquiteturas de referência MySQL
Arquiteturas de referência MySQLMySQL Brasil
 
Alta-disponibilidade e alta performance com o MySQL Cluster 7.3
Alta-disponibilidade e alta performance com o MySQL Cluster 7.3Alta-disponibilidade e alta performance com o MySQL Cluster 7.3
Alta-disponibilidade e alta performance com o MySQL Cluster 7.3MySQL Brasil
 
[Jsf] Java Server Faces Y Ajax – Parte 2 (2006)
[Jsf] Java Server Faces Y Ajax – Parte 2 (2006)[Jsf] Java Server Faces Y Ajax – Parte 2 (2006)
[Jsf] Java Server Faces Y Ajax – Parte 2 (2006)Josue Martinez
 
Guia essencial para embarcar o MySQL em seu produto
Guia essencial para embarcar o MySQL em seu produtoGuia essencial para embarcar o MySQL em seu produto
Guia essencial para embarcar o MySQL em seu produtoMySQL Brasil
 
MySQL é de graça?
MySQL é de graça?MySQL é de graça?
MySQL é de graça?MySQL Brasil
 
Alta-disponibilidade com MySQL
Alta-disponibilidade com MySQLAlta-disponibilidade com MySQL
Alta-disponibilidade com MySQLMySQL Brasil
 

Mais procurados (9)

Otimizando a segurança, o desempenho e a disponibilidade com o MySQL Enterpri...
Otimizando a segurança, o desempenho e a disponibilidade com o MySQL Enterpri...Otimizando a segurança, o desempenho e a disponibilidade com o MySQL Enterpri...
Otimizando a segurança, o desempenho e a disponibilidade com o MySQL Enterpri...
 
Replicação MySQL e PHP
Replicação MySQL e PHPReplicação MySQL e PHP
Replicação MySQL e PHP
 
Guia Ubuntu Server
Guia Ubuntu ServerGuia Ubuntu Server
Guia Ubuntu Server
 
Arquiteturas de referência MySQL
Arquiteturas de referência MySQLArquiteturas de referência MySQL
Arquiteturas de referência MySQL
 
Alta-disponibilidade e alta performance com o MySQL Cluster 7.3
Alta-disponibilidade e alta performance com o MySQL Cluster 7.3Alta-disponibilidade e alta performance com o MySQL Cluster 7.3
Alta-disponibilidade e alta performance com o MySQL Cluster 7.3
 
[Jsf] Java Server Faces Y Ajax – Parte 2 (2006)
[Jsf] Java Server Faces Y Ajax – Parte 2 (2006)[Jsf] Java Server Faces Y Ajax – Parte 2 (2006)
[Jsf] Java Server Faces Y Ajax – Parte 2 (2006)
 
Guia essencial para embarcar o MySQL em seu produto
Guia essencial para embarcar o MySQL em seu produtoGuia essencial para embarcar o MySQL em seu produto
Guia essencial para embarcar o MySQL em seu produto
 
MySQL é de graça?
MySQL é de graça?MySQL é de graça?
MySQL é de graça?
 
Alta-disponibilidade com MySQL
Alta-disponibilidade com MySQLAlta-disponibilidade com MySQL
Alta-disponibilidade com MySQL
 

Semelhante a Refman 4.1-pt.a4

Super Manual MySQL
Super Manual MySQL Super Manual MySQL
Super Manual MySQL kisb1337
 
Novidades do Universo MySQL julho-15
Novidades do Universo MySQL julho-15Novidades do Universo MySQL julho-15
Novidades do Universo MySQL julho-15MySQL Brasil
 
Java web fj21-- apostila da caelum
Java web fj21-- apostila da caelumJava web fj21-- apostila da caelum
Java web fj21-- apostila da caelumAgenor Neto
 
Apostila Tutorial CakePHP
Apostila Tutorial CakePHPApostila Tutorial CakePHP
Apostila Tutorial CakePHPFernando Palma
 
Dissertação de Mestrado - Planejamento para Serviços Web Semânticos
Dissertação de Mestrado - Planejamento para Serviços Web SemânticosDissertação de Mestrado - Planejamento para Serviços Web Semânticos
Dissertação de Mestrado - Planejamento para Serviços Web SemânticosJuliana Chahoud
 
Manual magalhaes
Manual magalhaesManual magalhaes
Manual magalhaesviagens
 
Apostila completa (php my sql e ajax)
Apostila completa (php   my sql e ajax)Apostila completa (php   my sql e ajax)
Apostila completa (php my sql e ajax)Paulo Kons
 
Apostila completa-de-php5-mysql-e-ajax
Apostila completa-de-php5-mysql-e-ajaxApostila completa-de-php5-mysql-e-ajax
Apostila completa-de-php5-mysql-e-ajaxhkm4e
 
Mis userguide 2008
Mis userguide 2008Mis userguide 2008
Mis userguide 2008silvamtt2003
 
Serviços Escaláveis e de Alta Performance com MySQL e Java
Serviços Escaláveis e de Alta Performance com MySQL e JavaServiços Escaláveis e de Alta Performance com MySQL e Java
Serviços Escaláveis e de Alta Performance com MySQL e JavaMySQL Brasil
 
Dreamweaver cs5 apostila dreamweaver cs5 apostilando.com
Dreamweaver cs5   apostila dreamweaver cs5 apostilando.comDreamweaver cs5   apostila dreamweaver cs5 apostilando.com
Dreamweaver cs5 apostila dreamweaver cs5 apostilando.comrobinhoct
 
Apostila dreamweaver-cs5
Apostila dreamweaver-cs5Apostila dreamweaver-cs5
Apostila dreamweaver-cs5aulaemvideo
 
Ubuntuserverguide 111121194031-phpapp02
Ubuntuserverguide 111121194031-phpapp02Ubuntuserverguide 111121194031-phpapp02
Ubuntuserverguide 111121194031-phpapp02a2m
 

Semelhante a Refman 4.1-pt.a4 (20)

Apostila sql
Apostila sqlApostila sql
Apostila sql
 
Super Manual MySQL
Super Manual MySQL Super Manual MySQL
Super Manual MySQL
 
Caelum java-web-fj21
Caelum java-web-fj21Caelum java-web-fj21
Caelum java-web-fj21
 
Novidades do Universo MySQL julho-15
Novidades do Universo MySQL julho-15Novidades do Universo MySQL julho-15
Novidades do Universo MySQL julho-15
 
Java web fj21-- apostila da caelum
Java web fj21-- apostila da caelumJava web fj21-- apostila da caelum
Java web fj21-- apostila da caelum
 
Cake php cookbook
Cake php cookbookCake php cookbook
Cake php cookbook
 
Apostila Tutorial CakePHP
Apostila Tutorial CakePHPApostila Tutorial CakePHP
Apostila Tutorial CakePHP
 
Rslinx classic portugues
Rslinx classic portuguesRslinx classic portugues
Rslinx classic portugues
 
Dissertação de Mestrado - Planejamento para Serviços Web Semânticos
Dissertação de Mestrado - Planejamento para Serviços Web SemânticosDissertação de Mestrado - Planejamento para Serviços Web Semânticos
Dissertação de Mestrado - Planejamento para Serviços Web Semânticos
 
Manual magalhaes
Manual magalhaesManual magalhaes
Manual magalhaes
 
Apostila completa (php my sql e ajax)
Apostila completa (php   my sql e ajax)Apostila completa (php   my sql e ajax)
Apostila completa (php my sql e ajax)
 
Apostila completa-de-php5-mysql-e-ajax
Apostila completa-de-php5-mysql-e-ajaxApostila completa-de-php5-mysql-e-ajax
Apostila completa-de-php5-mysql-e-ajax
 
Oracle
OracleOracle
Oracle
 
Mis userguide 2008
Mis userguide 2008Mis userguide 2008
Mis userguide 2008
 
Serviços Escaláveis e de Alta Performance com MySQL e Java
Serviços Escaláveis e de Alta Performance com MySQL e JavaServiços Escaláveis e de Alta Performance com MySQL e Java
Serviços Escaláveis e de Alta Performance com MySQL e Java
 
Dreamweaver cs5 apostila dreamweaver cs5 apostilando.com
Dreamweaver cs5   apostila dreamweaver cs5 apostilando.comDreamweaver cs5   apostila dreamweaver cs5 apostilando.com
Dreamweaver cs5 apostila dreamweaver cs5 apostilando.com
 
Apostila dreamweaver-cs5
Apostila dreamweaver-cs5Apostila dreamweaver-cs5
Apostila dreamweaver-cs5
 
Modulare i 01_11
Modulare i 01_11Modulare i 01_11
Modulare i 01_11
 
Ubuntuserverguide 111121194031-phpapp02
Ubuntuserverguide 111121194031-phpapp02Ubuntuserverguide 111121194031-phpapp02
Ubuntuserverguide 111121194031-phpapp02
 
39 visual basic net
39 visual basic net39 visual basic net
39 visual basic net
 

Refman 4.1-pt.a4

  • 1. Manual de Referência do MySQL 4.1
  • 2. Manual de Referência do MySQL 4.1 This is a translation of the MySQL Reference Manual that can be found at dev.mysql.com. The original Reference Manual is in English, and this translation is not necessarily as up to date as the English version. Copyright © 1997-2006 MySQL AB Resumo Document generated on: 2010-03-14 (revisão: 242) This manual is NOT distributed under a GPL style license. Use of the manual is subject to the following terms: • Conversion to other formats is allowed, but the actual content may not be altered or edited in any way. • You may create a printed copy for your own personal use. • For all other uses, such as selling printed copies or using the manual in whole or in part within another publication, prior written agreement from MySQL AB is required. Please contact the http://www.mysql.com/company/contact/ for more information or if you are interested in doing a translation.
  • 3.
  • 4. Índice Preface ........................................................................................................................................ xv 1. Informações Gerais ........................................................................................................................1 1.1. Sobre Este Manual ...............................................................................................................1 1.1.1. Convenções Usadas Neste Manual ..................................................................................2 1.2. Visão Geral do Sistema de Gerenciamento de Banco de Dados MySQL ................................................3 1.2.1. História do MySQL ...................................................................................................4 1.2.2. As Principais Características do MySQL ..........................................................................4 1.2.3. Estabilidade do MySQL ..............................................................................................6 1.2.4. Qual o Tamanho Que as Tabelas do MySQL Podem Ter? ......................................................7 1.2.5. Compatibilidade Com o Ano 2000 (Y2K) .........................................................................8 1.3. Visão Geral da MySQL AB ....................................................................................................9 1.3.1. O Modelo de Negócio e Serviços da MySQL AB .............................................................. 10 1.3.2. Informações para Contato .......................................................................................... 11 1.4. Suporte e Licenciamento do MySQL ....................................................................................... 12 1.4.1. Suporte Oferecido pela MySQL AB .............................................................................. 12 1.4.2. Copyrights e Licenças Usadas pelo MySQL ..................................................................... 12 1.4.3. Licenças do MySQL ................................................................................................ 13 1.4.4. Logomarcas e Marcas Registradas da MySQL AB ............................................................. 14 1.5. Mapa de Desenvolvimento do MySQL ..................................................................................... 15 1.5.1. MySQL 4.0 in a Nutshell ........................................................................................... 15 1.5.2. MySQL 4.1 in a Nutshell ........................................................................................... 17 1.5.3. MySQL 5.0, A Próxima Distribuição de Desenvolvimento ................................................... 18 1.6. MySQL e o Futuro (o TODO) ............................................................................................... 18 1.6.1. Novos Recursos Planejados Para a Versão 4.1 .................................................................. 18 1.6.2. Novos Recursos Planejados Para a Versão 5.0 .................................................................. 19 1.6.3. Novos Recursos Planejados Para a Versão 5.1 .................................................................. 19 1.6.4. Novos Recursos Planejados Para a Versão em um Futuro Próximo .......................................... 20 1.6.5. Novos Recursos Planejados Para a Versão em um Futuro a Médio Prazo ................................... 22 1.6.6. Novos Recursos que Não Planejamos Fazer ..................................................................... 23 1.7. Fontes de Informações do MySQL .......................................................................................... 23 1.7.1. Listas de Discussão MySQL ....................................................................................... 23 1.7.2. Suporte a Comunidade MySQL Atrvés do IRC (Internet Relay Chat) ....................................... 29 1.8. Qual compatibilidade aos padrões o MySQL oferece ? .................................................................. 29 1.8.1. Qual Padrão o MySQL Segue? .................................................................................... 30 1.8.2. Executando o MySQL no modo ANSI ........................................................................... 30 1.8.3. Extensões do MySQL para o Padrão SQL-92 ................................................................... 31 1.8.4. Diferenças do MySQL em Comparação com o SQL-92 ....................................................... 33 1.8.5. Como o MySQL Lida com Restrições ............................................................................ 37 1.8.6. Erros Conhecidos e Deficiências de Projetos no MySQL ...................................................... 38 2. Instalação do MySQL ................................................................................................................... 43 2.1. Instalação rápida padrão do MySQL ........................................................................................ 43 2.1.1. Instalando o MySQL no Windows ................................................................................ 43 2.1.2. Instalando o MySQL no Linux .................................................................................... 50 2.1.3. Instalando o MySQL no Mac OS X ............................................................................... 51 2.1.4. Instalando o MySQL no NetWare ................................................................................. 53 2.2. Detalhes Gerais de Instalação ................................................................................................ 54 2.2.1. Como obter o MySQL .............................................................................................. 54 2.2.2. Verificando a Integridade do Pacote Usando MD5 Checksums ou GnuPG .............................. 54 2.2.3. Sistemas Operacionais suportados pelo MySQL ................................................................ 56 2.2.4. Qual versão do MySQL deve ser usada .......................................................................... 57 2.2.5. Layouts de Instalação ............................................................................................... 59 2.2.6. Como e quando as atualizações são lançadas? .................................................................. 60 2.2.7. Filosofia das Distribuições - Nenhum Bug Conhecidos nas Distribuições .................................. 61 2.2.8. Binários MySQL compilados pela MySQL AB ................................................................. 61 2.2.9. Instalando uma Distribuição Binária do MySQL ............................................................... 65 2.3. Instalando uma distribuição com fontes do MySQL ...................................................................... 67 2.3.1. Visão geral da instalação rápida ................................................................................... 68 2.3.2. Aplicando patches ................................................................................................... 69 2.3.3. Opções típicas do configure ................................................................................... 70 2.3.4. Instalando pela árvore de fontes do desenvolvimento .......................................................... 72 2.3.5. Lidando com Problemas de Compilação ......................................................................... 74 2.3.6. Notas MIT-pthreads ................................................................................................. 76 2.3.7. Instalando o MySQL a partir do Fonte no Windows ........................................................... 77 2.4. Configurações e Testes Pós-instalação ..................................................................................... 80 iv
  • 5. 2.4.1. Problemas Executando o mysql_install_db .............................................................. 83 2.4.2. Problemas Inicializando o Servidor MySQL .................................................................... 84 2.4.3. Inicializando e parando o MySQL automaticamente. .......................................................... 85 2.5. Atualizando/Desatualizando o MySQL ..................................................................................... 86 2.5.1. Atualizando da Versão 4.0 para 4.1 ............................................................................... 87 2.5.2. Atualizando da Versão 3.23 para 4.0 ............................................................................. 89 2.5.3. Atualizando da versão 3.22 para 3.23 ............................................................................. 91 2.5.4. Atualizando da versão 3.21 para 3.22 ............................................................................. 92 2.5.5. Atualizando da versão 3.20 para 3.21 ............................................................................. 93 2.5.6. Atualizando a Tabela de Permissões .............................................................................. 93 2.5.7. Atualizando para outra arquitetura ................................................................................ 94 2.5.8. Atualizando o MySQL no Windows .............................................................................. 95 2.6. Notas específicas para os Sistemas Operacionais ......................................................................... 95 2.6.1. Notas Windows ...................................................................................................... 96 2.6.2. Notas Linux (Todas as versões) ................................................................................... 98 2.6.3. Notas Solaris ........................................................................................................103 2.6.4. Notas BSD ...........................................................................................................107 2.6.5. Notas Mac OS X ....................................................................................................109 2.6.6. Notas de Outros Unix ..............................................................................................110 2.6.7. Notas OS/2 ..........................................................................................................117 2.6.8. Notas Novell NetWare .............................................................................................118 2.6.9. Notas BeOS .........................................................................................................118 2.7. Comentários de Instalação do Perl .........................................................................................118 2.7.1. Instalando Perl no Unix ............................................................................................118 2.7.2. Instalaando ActiveState Perl no Windows ......................................................................119 2.7.3. Problemas Usando a Interface Perl DBI/DBD ..................................................................119 3. Tutorial de Introdução Do MySQL ...................................................................................................122 3.1. Conectando e Desconectando do Servidor ................................................................................122 3.2. Fazendo Consultas ............................................................................................................122 3.3. Criação e Utilização de um Banco de Dados .............................................................................125 3.3.1. Criando e Selecionando um Banco de Dados ...................................................................126 3.3.2. Criando uma Tabela ................................................................................................126 3.3.3. Carregando dados em uma tabela ................................................................................127 3.3.4. Recuperando Informações de uma Tabela ......................................................................128 3.4. Obtendo Informações Sobre Bancos de Dados e Tabelas ...............................................................138 3.5. Utilizando mysql em Modo Batch ........................................................................................139 3.6. Exemplos de Consultas Comuns ............................................................................................140 3.6.1. O Valor Máximo para uma Coluna ..............................................................................140 3.6.2. O Registro que Armazena o Valor Máximo para uma Coluna Determinada ...............................140 3.6.3. Máximo da Coluna por Grupo ....................................................................................141 3.6.4. As Linhas Armazenando o Group-wise Máximo de um Certo Campo .....................................141 3.6.5. Utilizando Variáveis de Usuário ..................................................................................142 3.6.6. Utilizando Chaves Estrangeiras ..................................................................................142 3.6.7. Pesquisando em Duas Chaves ....................................................................................143 3.6.8. Calculando Visitas Diárias ........................................................................................143 3.6.9. Usando AUTO_INCREMENT .....................................................................................144 3.7. Consultas de Projetos Gêmeos ..............................................................................................145 3.7.1. Encontrando Todos Gêmeos Não-distribuídos .................................................................145 3.7.2. Mostrando uma Tabela sobre a Situação dos Pares Gêmeos .................................................146 3.8. Utilizando MySQL com Apache ...........................................................................................147 4. Administração do Bancos de Dados MySQL .......................................................................................148 4.1. Configurando o MySQL .....................................................................................................148 4.1.1. Opções de Linha de Comando do mysqld .....................................................................148 4.1.2. Arquivo de Opções my.cnf .....................................................................................154 4.2. Executando Múltiplos MySQL Servers na Mesma Máquina ...........................................................157 4.2.1. Executando Múltiplos Servidores no Windows ................................................................158 4.2.2. Executando Múltiplos Servidores no Unix ......................................................................160 4.2.3. Usando Programas Clientes em um Ambiente Multi-Servidor ...............................................161 4.3. Detalhes Gerais de Segurança e o Sistema de Privilégio de Acesso do MySQL .....................................162 4.3.1. Segurança Geral ....................................................................................................162 4.3.2. Como Tornar o MySQL Seguro contra Crackers ..............................................................164 4.3.3. Opções de Inicialização para o mysqld em Relação a Segurança. .........................................165 4.3.4. Detalhes de Segurança com LOAD DATA LOCAL ...........................................................165 4.3.5. O Que o Sistema de Privilégios Faz .............................................................................166 4.3.6. Como o Sistema de Privilégios Funciona .......................................................................166 4.3.7. Privilégios Fornecidos pelo MySQL .............................................................................169 4.3.8. Conectando ao Servidor MySQL .................................................................................170 4.3.9. Controle de Acesso, Estágio 1: Verificação da Conexão .....................................................171 4.3.10. Controle de Acesso, Estágio 2: Verificação da Requisição .................................................173 4.3.11. Hashing de Senhas no MySQL 4.1 .............................................................................175 Manual de Referência do MySQL 4.1 v
  • 6. 4.3.12. Causas dos Erros de Accesso Negado .....................................................................178 4.4. Gerenciamento das Contas dos Usuários no MySQL ....................................................................181 4.4.1. A Sintaxe de GRANT e REVOKE .................................................................................181 4.4.2. Nomes de Usuários e Senhas do MySQL .......................................................................185 4.4.3. Quando as Alterações nos Privilégios tem Efeito ..............................................................185 4.4.4. Configurando os Privilégios Iniciais do MySQL ...............................................................186 4.4.5. Adicionando Novos Usuários ao MySQL .......................................................................187 4.4.6. Deletando Usuários do MySQL ..................................................................................189 4.4.7. Limitando os Recursos dos Usuários ............................................................................189 4.4.8. Configurando Senhas ..............................................................................................190 4.4.9. Mantendo Sua Senha Segura ......................................................................................190 4.4.10. Usando Conexões Seguras .......................................................................................191 4.5. Prevenção de Disastres e Recuperação ....................................................................................195 4.5.1. Backups dos Bancos de Dados ...................................................................................195 4.5.2. Sintaxe de BACKUP TABLE .....................................................................................197 4.5.3. Sintaxe de RESTORE TABLE ....................................................................................197 4.5.4. Sintaxe de CHECK TABLE .......................................................................................197 4.5.5. Sintaxe do REPAIR TABLE .....................................................................................199 4.5.6. Utilizando myisamchk para Manutenção de Tabelas e Recuperação em Caso de Falhas ..............199 4.5.7. Configurando um Regime de Manutenção das Tabelas .......................................................208 4.5.8. Obtendo Informações sobre as Tabelas ..........................................................................208 4.6. Adiministração do Banco de Dados e Referência de Linguagem ......................................................212 4.6.1. Sintaxe de OPTIMIZE TABLE ..................................................................................212 4.6.2. Sintaxe de ANALYZE TABLE ....................................................................................212 4.6.3. Sintaxe de CHECKSUM TABLE ..................................................................................213 4.6.4. Sintaxe de FLUSH ..................................................................................................213 4.6.5. Sintaxe de RESET ..................................................................................................214 4.6.6. Sintaxe de PURGE MASTER LOGS ............................................................................214 4.6.7. Sintaxe de KILL ....................................................................................................214 4.6.8. Sintaxe de SHOW ....................................................................................................215 4.7. Localização do MySQL e Utilização Internacional ......................................................................230 4.7.1. O Conjunto de Caracteres Utilizado para Dados e Ordenação ...............................................230 4.7.2. Mensagens de Erros em Outras Línguas ........................................................................231 4.7.3. Adicionando um Novo Conjunto de Caracteres ................................................................231 4.7.4. Os Vetores de Definições de Caracteres .........................................................................233 4.7.5. Suporte à Ordenação de Strings ..................................................................................233 4.7.6. Suporte à Caracteres Multi-byte ..................................................................................233 4.7.7. Problemas com Conjuntos de Caracteres ........................................................................233 4.8. Utilitários e Scripts do Lado do Servidor MySQL .......................................................................234 4.8.1. Visão Geral dos Scripts e Utilitários do Lado Servidor .......................................................234 4.8.2. mysqld-safe, o wrapper do mysqld ........................................................................234 4.8.3. mysqld_multi, programa para gerenciar múltiplos servidores MySQL ................................236 4.8.4. myisampack, O Gerador de Tabelas Compactadas de Somente Leitura do MySQL ...................238 4.8.5. mysqld-max, om servidor mysqld extendido ..............................................................243 4.9. Utilitários e Scripts do Lado do Cliente MySQL .........................................................................244 4.9.1. Visão Geral dos Utilitários e Scripts do Lado do Cliente .....................................................244 4.9.2. mysql, A Ferramenta de Linha de Comando ..................................................................245 4.9.3. mysqlcc, The MySQL Control Center ........................................................................252 4.9.4. mysqladmin, Administrando um Servidor MySQL .........................................................254 4.9.5. mysqlbinlog, Executando as Consultas a Partir de um Log Binário ....................................256 4.9.6. Usando mysqlcheck para Manutenção de Tabelas e Recuperação em Caso de Falhas ................256 4.9.7. mysqldump, Descarregando a Estrutura de Tabelas e Dados ...............................................259 4.9.8. mysqlhotcopy, Copiando Bancos de Dados e Tabelas do MySQL .....................................262 4.9.9. mysqlimport, Importando Dados de Arquivos Texto .....................................................264 4.9.10. mysqlshow, Exibindo Bancos de Dados, Tabelas e Colunas .............................................265 4.9.11. mysql_config, Opções para compilação do cliente MySQL ...........................................266 4.9.12. perror, Explicando Códigos de Erros .......................................................................267 4.9.13. Como Executar Comandos SQL a Partir de um Arquivo Texto ............................................267 4.10. Os Arquivos de Log do MySQL ..........................................................................................267 4.10.1. O Log de Erros ....................................................................................................268 4.10.2. O Log de Consultas ...............................................................................................268 4.10.3. O Log de Atualizações ...........................................................................................268 4.10.4. O Log Binário .....................................................................................................269 4.10.5. O Log para Consultas Lentas ....................................................................................271 4.10.6. Manutenção do Log de Arquivo ................................................................................271 4.11. Replicação no MySQL .....................................................................................................272 4.11.1. Introdução ..........................................................................................................272 4.11.2. Visão Geral da Implementação da Replicação ................................................................272 4.11.3. Detalhes de Implementação da Replicação ....................................................................273 4.11.4. Como Configurar a Replicação .................................................................................276 Manual de Referência do MySQL 4.1 vi
  • 7. 4.11.5. Recursos de Replicação e Problemas Conhecidos ............................................................279 4.11.6. Opções de Inicialização da Replicação ........................................................................281 4.11.7. Instruções SQL para Controle do Servidor Master ...........................................................287 4.11.8. Instruções SQL para Controle do Servidor Slave .............................................................288 4.11.9. FAQ da Replicação ...............................................................................................294 4.11.10. Problemas com Replicação .....................................................................................298 4.11.11. Relatando Problemas de Replicação ..........................................................................299 5. Otimização do MySQL .................................................................................................................300 5.1. Visão Geral da Otimização ..................................................................................................300 5.1.1. Limitações do Projeto MySQL/Trocas ..........................................................................300 5.1.2. Portabilidade ........................................................................................................300 5.1.3. Para que Utilizamos o MySQL? ..................................................................................301 5.1.4. O Pacote de Benchmark do MySQL .............................................................................302 5.1.5. Utilizando seus Próprios Benchmarks ...........................................................................303 5.2. Otimizando SELECTs e Outras Consultas ................................................................................303 5.2.1. Sintaxe de EXPLAIN (Obter informações sobre uma SELECT) ............................................304 5.2.2. Estimando o Desempenho de uma Consulta ....................................................................309 5.2.3. Velocidade das Consultas que Utilizam SELECT .............................................................310 5.2.4. Como o MySQL Otimiza Cláusulas WHERE ...................................................................310 5.2.5. Como o MySQL Otimiza IS NULL ............................................................................311 5.2.6. Como o MySQL Otimiza Cláusulas DISTINCT ..............................................................312 5.2.7. Como o MySQL Otimiza LEFT JOIN e RIGHT JOIN ....................................................312 5.2.8. Como o MySQL Otimiza Cláusulas ORDER BY ..............................................................313 5.2.9. Como o MySQL Otimiza Cláusulas LIMIT ...................................................................314 5.2.10. Performance das Consultas que Utilizam INSERT ..........................................................314 5.2.11. Performance das Consultas que Utilizam UPDATE ..........................................................316 5.2.12. Performance das Consultas que Utilizam DELETE ..........................................................316 5.2.13. Mais Dicas sobre Otimizações ..................................................................................316 5.3. Detalhes sobre Locks .........................................................................................................318 5.3.1. Como o MySQL Trava as Tabelas ...............................................................................318 5.3.2. Detalhes sobre Lock de Tabelas ..................................................................................319 5.4. Otimizando a Estrutura de Banco de Dados ...............................................................................320 5.4.1. Opções do Projeto ..................................................................................................320 5.4.2. Deixando os Dados com o Menor Tamanho Possível .........................................................320 5.4.3. Como o MySQL Utiliza Índices ..................................................................................321 5.4.4. Índices de Colunas .................................................................................................323 5.4.5. Índices de Múltiplas Colunas .....................................................................................323 5.4.6. Como o MySQL Conta as Tabelas Abertas .....................................................................324 5.4.7. Como o MySQL Abre e Fecha as Tabelas ......................................................................324 5.4.8. Desvantagem em Criar um Número Grande de Tabelas no Mesmo Banco de Dados ....................325 5.5. Otimizando o Servidor MySQL ............................................................................................325 5.5.1. Sintonia dos Parâmetros em Tempo de Sistema/Compilação e na Inicialização ...........................325 5.5.2. Parâmetros de Sintonia do Servidor ..............................................................................325 5.5.3. Como a Compilação e a Ligação Afetam a Velocidade do MySQL ........................................327 5.5.4. Como o MySQL Utiliza a Memória .............................................................................328 5.5.5. Como o MySQL Utiliza o DNS ..................................................................................329 5.5.6. Sintaxe de SET ......................................................................................................329 5.6. Detalhes de Disco .............................................................................................................333 5.6.1. Utilizando Links Simbólicos ......................................................................................333 6. Referência de Linguagem do MySQL ...............................................................................................336 6.1. Estrutura da Linguagem ......................................................................................................336 6.1.1. Literais: Como Gravar Strings e Numerais .....................................................................336 6.1.2. Nomes de Banco de dados, Tabela, Índice, Coluna e Alias ..................................................338 6.1.3. Caso Sensitivo nos Nomes ........................................................................................339 6.1.4. Variáveis de Usuário ...............................................................................................340 6.1.5. Variáveis de Sistema ...............................................................................................341 6.1.6. Sintaxe de Comentários ............................................................................................343 6.1.7. Tratamento de Palavras Reservadas no MySQL ...............................................................344 6.2. Tipos de Campos ..............................................................................................................346 6.2.1. Tipos Numéricos ....................................................................................................350 6.2.2. Tipos de Data e Hora ...............................................................................................351 6.2.3. Tipos String .........................................................................................................356 6.2.4. Escolhendo o Tipo Correto para uma Coluna ..................................................................360 6.2.5. Usando Tipos de Colunas de Outros Mecanismos de Banco de Dados .....................................360 6.2.6. Exigências de Armazenamento dos Tipos de Coluna .........................................................360 6.3. Funções para Uso em Cláusulas SELECT e WHERE .....................................................................362 6.3.1. Operadores e Funções de Tipos não Especificados ............................................................362 6.3.2. Funções String ......................................................................................................368 6.3.3. Funções Numéricas .................................................................................................377 6.3.4. Funções de Data e Hora ...........................................................................................383 Manual de Referência do MySQL 4.1 vii
  • 8. 6.3.5. Funções de Conversão .............................................................................................396 6.3.6. Outras Funções ......................................................................................................398 6.3.7. Funções e Modificadores para Usar com Cláusulas GROUP BY ............................................406 6.4. Manipulação de Dados: SELECT, INSERT, UPDATE e DELETE ....................................................411 6.4.1. Sintaxe SELECT ....................................................................................................411 6.4.2. Sintaxe de Subquery ...............................................................................................416 6.4.3. Sintaxe INSERT ....................................................................................................423 6.4.4. Sintaxe UPDATE ....................................................................................................427 6.4.5. Sintaxe DELETE ....................................................................................................428 6.4.6. Sintaxe TRUNCATE ................................................................................................429 6.4.7. Sintaxe REPLACE ..................................................................................................429 6.4.8. Sintaxe LOAD DATA INFILE ..................................................................................430 6.4.9. Sintaxe HANDLER ..................................................................................................435 6.4.10. Sintaxe DO .........................................................................................................436 6.5. Definição de Dados: CREATE, DROP e ALTER ..........................................................................436 6.5.1. Sintaxe CREATE DATABASE ....................................................................................436 6.5.2. Sintaxe DROP DATABASE .......................................................................................437 6.5.3. Sintaxe CREATE TABLE .........................................................................................437 6.5.4. Sintaxe ALTER TABLE ...........................................................................................444 6.5.5. Sintaxe RENAME TABLE .........................................................................................446 6.5.6. Sintaxe DROP TABLE .............................................................................................447 6.5.7. Sintaxe CREATE INDEX .........................................................................................447 6.5.8. Sintaxe DROP INDEX .............................................................................................448 6.6. Comandos Utilitários Básicos do Usuário MySQL ......................................................................448 6.6.1. Sintaxe USE .........................................................................................................448 6.6.2. Sintaxe DESCRIBE (Obtem Informações Sobre Colunas) ...................................................448 6.7. Comandos Transacionais e de Lock do MySQL .........................................................................448 6.7.1. Sintaxe de START TRANSACTION, COMMIT e ROLLBACK ...............................................448 6.7.2. Instruções que Não Podem Ser Desfeitas .......................................................................449 6.7.3. Instruções que Fazem um Commit Implicito ...................................................................449 6.7.4. Sintaxe de SAVEPOINT e ROLLBACK TO SAVEPOINT ..................................................449 6.7.5. Sintaxe LOCK TABLES e UNLOCK TABLES ................................................................450 6.7.6. Sintaxe SET TRANSACTION ....................................................................................451 6.8. Pesquisa Full-text no MySQL ...............................................................................................452 6.8.1. Restrições Full-text .................................................................................................454 6.8.2. Ajuste Fino de Pesquisas Full-text no MySQL .................................................................455 6.8.3. TODO de Pesquisas Full-text .....................................................................................455 6.9. Cache de Consultas do MySQL .............................................................................................456 6.9.1. Como a Cache de Consultas Opera ..............................................................................456 6.9.2. Configuração da Cache de Consultas ............................................................................457 6.9.3. Opções da Cache de Consultas na SELECT ....................................................................458 6.9.4. Estado e Manutenção da Cache de Consultas ..................................................................458 7. Tipos de Tabela do MySQL ...........................................................................................................460 7.1. Tabelas MyISAM ..............................................................................................................460 7.1.1. Espaço Necessário para Chaves ..................................................................................462 7.1.2. Formatos de Tabelas MyISAM ....................................................................................462 7.1.3. Problemas com Tabelas MyISAM ................................................................................464 7.2. Tabelas MERGE ...............................................................................................................465 7.2.1. Problemas com Tabelas MERGE ..................................................................................467 7.3. Tabelas ISAM .................................................................................................................468 7.4. Tabelas HEAP .................................................................................................................468 7.5. Tabelas InnoDB ..............................................................................................................469 7.5.1. Visão Geral de Tabelas InnoDB ..................................................................................469 7.5.2. InnoDB no MySQL Versão 3.23 .................................................................................470 7.5.3. Opções de Inicialização do InnoDB .............................................................................470 7.5.4. Criando Tablespaces no InnoDB .................................................................................474 7.5.5. Criando Tabelas InnoDB ..........................................................................................475 7.5.6. Adicionando e Removendo Arquivos de Dados e Log do InnoDB ..........................................478 7.5.7. Fazendo Backup e Recuperando um Banco de Dados InnoDB ..............................................479 7.5.8. Movendo um Banco de Dados InnoDB para Outra Máquina ................................................480 7.5.9. Modelo Transacional do InnoDB .................................................................................481 7.5.10. Dicas de Ajuste de Desempenho ................................................................................485 7.5.11. Implementação de Multi-versioning ............................................................................488 7.5.12. Estrutura de Tabelas e Índices ...................................................................................488 7.5.13. Gerenciamento do Espaço de Arquivos e E/S de Disco .....................................................490 7.5.14. Tratando Erros .....................................................................................................491 7.5.15. Restrições em Tabelas InnoDB .................................................................................491 7.5.16. Histórico de Alterações do InnoDB ............................................................................492 7.5.17. Informações de Contato do InnoDB ...........................................................................505 7.6. Tabelas BDB ou BerkeleyDB .............................................................................................505 Manual de Referência do MySQL 4.1 viii
  • 9. 7.6.1. Visão Geral de Tabelas BDB ......................................................................................505 7.6.2. Instalando BDB ......................................................................................................506 7.6.3. Opções de Inicialização do BDB ..................................................................................506 7.6.4. Características de Tabelas BDB: ..................................................................................506 7.6.5. Itens a serem corrigidos no BDB num futuro próximo: ........................................................507 7.6.6. Sistemas operacionais suportados pelo BDB ....................................................................508 7.6.7. Restrições em Tabelas BDB .......................................................................................508 7.6.8. Erros Que Podem Ocorrer Usando Tabelas BDB ...............................................................508 8. Introdução ao MaxDB ..................................................................................................................510 8.1. Historia do MaxDB ...........................................................................................................510 8.2. Licenciamento e Suporte .....................................................................................................510 8.3. Conceitos Básicos do MaxDB ..............................................................................................510 8.4. Diferenças de Recursos entre o MaxDB e o MySQL ....................................................................510 8.5. Interoperability Features between MaxDB and MySQL ................................................................511 8.6. Links Relacionados ao MaxDB .............................................................................................511 8.7. Palavras Reservadas no MaxDB ............................................................................................511 9. Conjunto de Caracteres Nacionais e Unicode .......................................................................................514 9.1. Conjuntos de Caracteres e Collations em Geral ..........................................................................514 9.2. Conjunto de Caracteres e Collations no MySQL .........................................................................514 9.3. Determinando o Conjunto de Caracteres e Collation Padrões ..........................................................515 9.3.1. Conjunto de Caracteres e Collations do Servidor ..............................................................515 9.3.2. Conjunto de Caracteres e Collation de Banco de Dados ......................................................515 9.3.3. O Conjunto de Caracteres e Collations de Tabela ..............................................................516 9.3.4. Conjunto de Caracteres e Collation de Colunas ................................................................516 9.3.5. Exemplos de Atribuições de Conjuntos de Caracteres e Collation ..........................................517 9.3.6. Conjunto de Caracteres e Collation de Conexão ...............................................................517 9.3.7. Conjunto de Caracteres e Collation de Caracter de String Literal ...........................................518 9.3.8. Cláusula COLLATE em Várias Partes de uma Consulta SQL ................................................519 9.3.9. Precedência da Cláusula COLLATE ..............................................................................519 9.3.10. Operador BINARY ................................................................................................520 9.3.11. Alguns Casos Especiais Onde a Determinação da Collation e Trabalhosa ................................520 9.3.12. Collations Devem Ser para o Conjunto de Caracteres Certo ................................................520 9.3.13. Um exemplo do Efeito da Collation ............................................................................521 9.4. Operações Afetadas pelo Suporte a Conjunto de Caracteres ...........................................................521 9.4.1. Strings de Resultados ..............................................................................................521 9.4.2. CONVERT() ........................................................................................................522 9.4.3. CAST() .............................................................................................................522 9.4.4. SHOW CHARACTER SET ........................................................................................522 9.4.5. SHOW COLLATION ...............................................................................................522 9.4.6. SHOW CREATE DATABASE ....................................................................................523 9.4.7. SHOW FULL COLUMNS ..........................................................................................523 9.5. Suporte Unicode ..............................................................................................................523 9.6. UTF8 para Metdados .........................................................................................................524 9.7. Compatibilidade com Outros SGBDs ......................................................................................524 9.8. Novo Formato do Arquivo de Configuração do Conjunto de Caracteres .............................................524 9.9. Conjunto de Caracteres Nacional ...........................................................................................524 9.10. Atualizando para o MySQL 4.0 ...........................................................................................525 9.10.1. Conjunto de Caracteres do MySQL e o Par/Conjunto de Caracter/Collation Correspondente do MySQL 4.1 ............................................................................................................................525 9.11. Os conjuntos de Caracteres e Collations que o MySQL Suporta .....................................................526 9.11.1. O Conjunto de Caracteres Unicode .............................................................................527 9.11.2. Conjunto de Caracteres para Plataformas Específicas .......................................................527 9.11.3. Conjunto de Caracteres do Sul da Europa e Oriente Médio .................................................527 9.11.4. Os Conjuntos de Caracteres Asiáticos .........................................................................527 9.11.5. Os Conjuntos de Caracteres Bálticos ...........................................................................527 9.11.6. Os Conjuntos de Caracteres Cirílicos ..........................................................................528 9.11.7. O Conjunto de Caracteres da Europa Central .................................................................528 9.11.8. Os Conjuntos de Caracteres da Europa Ocidental ............................................................529 10. Extensões Espacias em MySQL .....................................................................................................531 10.1. Introdução ....................................................................................................................531 10.2. O Modelo Geomátrico OpenGIS ..........................................................................................531 10.2.1. A Hierarquia da Classe Geometry ............................................................................532 10.2.2. Classe Geometry ................................................................................................532 10.2.3. Classe Point .....................................................................................................533 10.2.4. Classe Curve .....................................................................................................534 10.2.5. Classe LineString ............................................................................................534 10.2.6. Classe Surface ..................................................................................................534 10.2.7. Classe Polygon ..................................................................................................534 10.2.8. Classe GeometryCollection ..............................................................................535 10.2.9. Classe MultiPoint ............................................................................................535 Manual de Referência do MySQL 4.1 ix
  • 10. 10.2.10. Classe MultiCurve ...........................................................................................535 10.2.11. Classe MultiLineString (Multi Linhas) ...............................................................536 10.2.12. Classe MultiSurface (Multi Superfícies) ...............................................................536 10.2.13. Classe MultiPolygon (Multi Polígonos) .................................................................536 10.3. Formatos de Dados Espaciais Suportados ...............................................................................537 10.3.1. Formato Well-Known Text (WKT) ............................................................................537 10.3.2. Formato Well-Known Binary (WKB) ..........................................................................537 10.4. Criando um Banco de Dados MySQL Habilitado Espacialmente ....................................................538 10.4.1. Tipos de Dados Espaciais do MySQL ..........................................................................538 10.4.2. Criando Valores Espaciais .......................................................................................538 10.4.3. Criando Colunas Espaciais ......................................................................................541 10.4.4. Entrando com Dados em Colunas Espaciais ..................................................................541 10.4.5. Buscando Dados Espaciais ......................................................................................542 10.5. Analisando Informação Espacial ..........................................................................................543 10.5.1. Funções Para Converter Geometrias Entre Formatos Diferentes ...........................................543 10.5.2. Funções de Análise das Propriedades de Geometry .......................................................544 10.5.3. Funções Que Criam Novas Geometrias de Outras Existentes ..............................................549 10.5.4. Funções Para Testar Relações Espaciais Entre Objetos Geométricos .....................................550 10.5.5. Relações de Retângulo de Limite Mínimo (Minimal Bounding Rectangles - MBR) em Geometrias .550 10.5.6. Funções que Testam Relacionamentos Espaciais Entre Geometrias .......................................551 10.6. Otimizando Análises Espaciais ............................................................................................552 10.6.1. Criando Índices Espaciais ........................................................................................552 10.6.2. Usando Índice Espacial ..........................................................................................553 10.7. Compatibilidade e Conformidade com o MySQL ......................................................................554 10.7.1. Recursos GIS Que Ainda Não Estão Implementados ........................................................554 11. Stored Procedures e Funções .........................................................................................................555 11.1. Sintaxe de Stored Procedure ...............................................................................................555 11.1.1. Manutenção de Stored Procedures ..............................................................................555 11.1.2. SHOW PROCEDURE STATUS e SHOW FUNCTION STATUS ..........................................557 11.1.3. CALL ................................................................................................................557 11.1.4. BEGIN ... END Compound Statement .....................................................................557 11.1.5. Instrução DECLARE ..............................................................................................558 11.1.6. Variables in Stored Procedures ..................................................................................558 11.1.7. Condições e Handlers ............................................................................................558 11.1.8. Cursors .............................................................................................................559 11.1.9. Flow Control Constructs .........................................................................................560 12. Ferramentas de Clientes e APIs do MySQL .......................................................................................563 12.1. API C do MySQL ...........................................................................................................563 12.1.1. Tipos de Dados da API C ........................................................................................563 12.1.2. Visão Geral das Função da API C ..............................................................................565 12.1.3. Descrição das Funções da API C ...............................................................................568 12.1.4. Instruções Preparadas da API C .................................................................................599 12.1.5. Tipos de Dados de Instruções Preparadas da API C .........................................................599 12.1.6. Visão Geral das Funções de Instruções Preparadas da API C ..............................................601 12.1.7. Descrição das Funções de Instrução Preparada da API C ...................................................603 12.1.8. Tratando a Execução de Múltiplas Consultas na API C .....................................................616 12.1.9. Manipulando Valores de Data e Hora na API C ..............................................................617 12.1.10. Descrição das Funções de Threads da API C ................................................................618 12.1.11. Descrição das Funções do Servidor Embutido da API C ..................................................619 12.1.12. Dúvidas e problemas comuns ao utilzar a API C ...........................................................619 12.1.13. Construindo Programas Clientes ..............................................................................621 12.1.14. Como Fazer um Cliente em Threads ..........................................................................621 12.1.15. libmysqld, a Biblioteca do Servidor Embutido MySQL ...................................................622 12.2. Suporte ODBC ao MySQL ................................................................................................625 12.2.1. Como Instalar o MyODBC ......................................................................................626 12.2.2. Como Preencher os Vários Campos no Programa de Administração do ODBC .........................626 12.2.3. Parâmetros de Conexão do MyODBC .........................................................................627 12.2.4. Como Relatar Problemas com o MyODBC ...................................................................628 12.2.5. Programas que Funcionam com MyODBC ...................................................................628 12.2.6. Como Obter o Valor de uma Coluna AUTO_INCREMENT no ODBC ....................................632 12.2.7. Relatando Problemas com MyODBC ..........................................................................632 12.3. Conectividade Java (JDBC) ao MySQL .................................................................................633 12.4. API PHP do MySQL ........................................................................................................633 12.4.1. Problemas Comuns com MySQL e PHP ......................................................................633 12.5. API Perl do MySQL ........................................................................................................633 12.5.1. DBI com DBD::mysql .........................................................................................634 12.5.2. A interface DBI ...................................................................................................634 12.5.3. Mais Informações DBI/DBD .....................................................................................640 12.6. API C++ do MySQL ........................................................................................................640 12.6.1. Borland C++ .......................................................................................................640 Manual de Referência do MySQL 4.1 x
  • 11. 12.7. API Python do MySQL .....................................................................................................640 12.8. API Tcl do MySQL .........................................................................................................640 12.9. Eiffel Wrapper do MySQL .................................................................................................640 13. Tratamento de Erros no MySQL ....................................................................................................641 13.1. Erros Retornados ............................................................................................................641 14. Estendendo o MySQL ................................................................................................................662 14.1. MySQL Internals ............................................................................................................662 14.1.1. Threads MySQL ...................................................................................................662 14.1.2. Pacotes de Teste do MySQL ....................................................................................662 14.2. Adicionando Novas Funções ao MySQL ................................................................................664 14.2.1. Sintaxe CREATE FUNCTION/DROP FUNCTION .........................................................664 14.2.2. Adicionando Novas Funções Definidas Por Usuário .........................................................665 14.2.3. Adicionando uma Nova Função Nativa ........................................................................671 14.3. Adicionado Novos Procedimentos ao MySQL ..........................................................................671 14.3.1. Análise de Procedimento .........................................................................................672 14.3.2. Escrevendo um Procedimento ...................................................................................672 A. Problemas e Erros Comuns ...........................................................................................................673 A.1. Como Determinar o Que Está Causando Problemas ....................................................................673 A.2. Erros Comuns Usando o MySQL ..........................................................................................674 A.2.1. Erro: Access Denied .........................................................................................674 A.2.2. Erro: MySQL server has gone away ..................................................................674 A.2.3. Erro: Can't connect to [local] MySQL server ..............................................675 A.2.4. Erro: Client does not support authentication protocol ............................676 A.2.5. Erro: Host '...' is blocked ...........................................................................676 A.2.6. Erro: Too many connections .............................................................................677 A.2.7. Erro: Some non-transactional changed tables couldn't be rolled back ...677 A.2.8. Erro: Out of memory .........................................................................................677 A.2.9. Erro: Packet too large ....................................................................................677 A.2.10. Erros de Comunicação / Comunicação Abortada ............................................................678 A.2.11. Erro: The table is full .................................................................................679 A.2.12. Erro: Can't create/write to file ................................................................679 A.2.13. Erro no Cliente: Commands out of sync ..............................................................679 A.2.14. Erro: Ignoring user ........................................................................................679 A.2.15. Erro: Table 'xxx' doesn't exist ..................................................................680 A.2.16. Erro: Can't initialize character set xxx ..................................................680 A.2.17. Arquivo Não Encontrado ........................................................................................680 A.3. Assuntos Relacionados a Instalação .......................................................................................681 A.3.1. Problemas de Ligação com a Biblioteca do Cliente MySQL ................................................681 A.3.2. Como Executar o MySQL Como Um Usuário Normal .......................................................682 A.3.3. Problemas com Permissões de Arquivos .......................................................................682 A.4. Assuntos Relacionados a Administração .................................................................................683 A.4.1. O Que Fazer Se o MySQL Continua Falhando ................................................................683 A.4.2. Como Recuperar uma Senha de Root Esquecida ..............................................................684 A.4.3. Como o MySQL Trata de Discos Sem Espaço ................................................................685 A.4.4. Onde o MySQL Armazena Arquivos Temporários ...........................................................686 A.4.5. Como Proteger ou AlterarHow to Protect or Change the MySQL Socket File /tmp/mysql.sock 686 A.4.6. Problemas Com Fuso Horário ....................................................................................687 A.5. Assuntos Relacionados a Consultas .......................................................................................687 A.5.1. Caso-Sensitivito em Pesquisas ...................................................................................687 A.5.2. Problemas Usando Colunas DATE ..............................................................................687 A.5.3. Problemas com Valores NULL ...................................................................................688 A.5.4. Problemas com alias ...........................................................................................689 A.5.5. Deletando Linhas de Tabelas Relacionadas ....................................................................689 A.5.6. Resolvendo Problemas Com Registros Não Encontrados ....................................................689 A.5.7. Problemas com Comparação de Ponto Flutuante ..............................................................690 A.6. Assuntos Relacionados ao Otimizador ....................................................................................691 A.6.1. Camo evitar o varredura da tabela,,, .............................................................................691 A.7. Assuntos Relacionados a Definições de Tabelas ........................................................................692 A.7.1. Problemas com ALTER TABLE. ................................................................................692 A.7.2. Como Alterar a Ordem das Colunas em Uma Tabela .........................................................692 A.7.3. Problemas com TEMPORARY TABLE .......................................................................693 B. Contribuição de Programas ...........................................................................................................694 B.1. APIs ............................................................................................................................694 B.2. Conversores ...................................................................................................................695 B.3. Utilitários ......................................................................................................................696 C. Colaboradores do MySQL ............................................................................................................698 C.1. Desenvolvedores do MySQL ...............................................................................................698 C.2. Coolaboradores do MySQL .................................................................................................701 C.3. Responsáveis pela Documentação e Tradução ...........................................................................705 C.4. Bibliotecas usadas e incluidas com o MySQL ...........................................................................706 Manual de Referência do MySQL 4.1 xi
  • 12. C.5. Pacotes que suportam o MySQL ...........................................................................................707 C.6. Ferramentas que são usadas para criar o MySQL ........................................................................707 C.7. Responsáveis pelo Suporte do MySQL ...................................................................................708 D. Histórico de Alterações do MySQL .................................................................................................709 D.1. Alterações na distribuição 5.0.0 (Development) .........................................................................709 D.2. Alterações na distribuição 4.1.x (Alpha) ..................................................................................709 D.2.1. Alterações na distribuição 4.1.2 (not released yet) ............................................................710 D.2.2. Alterações na distribuição 4.1.1 (01 de Dez de 2003) ........................................................710 D.2.3. Alterações na distribuição 4.1.0 (03 Apr 2003: Alpha) .......................................................714 D.3. Alterações na distribuição 4.0.x (Production) ............................................................................715 D.3.1. Alterações na distribuição 4.0.17 (not released yet) ..........................................................716 D.3.2. Alterações na distribuição 4.0.16 (17 Out 2003) ..............................................................717 D.3.3. Alterações na distribuição 4.0.15 (03 Sep 2003) ..............................................................719 D.3.4. Alterações na distribuição 4.0.14 (18 Jul 2003) ...............................................................722 D.3.5. Alterações na distribuição 4.0.13 (16 May 2003) .............................................................724 D.3.6. Alterações na distribuição 4.0.12 (15 Mar 2003: Production) ...............................................727 D.3.7. Alterações na distribuição 4.0.11 (20 Feb 2003) ..............................................................728 D.3.8. Alterações na distribuição 4.0.10 (29 Jan 2003) ...............................................................729 D.3.9. Alterações na distribuição 4.0.9 (09 Jan 2003) ................................................................730 D.3.10. Alterações na distribuição 4.0.8 (07 Jan 2003) ...............................................................731 D.3.11. Alterações na distribuição 4.0.7 (20 Dec 2002) ..............................................................731 D.3.12. Alterações na distribuição 4.0.6 (14 Dec 2002: Gamma) ...................................................732 D.3.13. Alterações na distribuição 4.0.5 (13 Nov 2002) ..............................................................733 D.3.14. Alterações na distribuição 4.0.4 (29 Sep 2002) ..............................................................734 D.3.15. Alterações na distribuição 4.0.3 (26 Aug 2002: Beta) .......................................................736 D.3.16. Alterações na distribuição 4.0.2 (01 Jul 2002) ...............................................................737 D.3.17. Alterações na distribuição 4.0.1 (23 Dec 2001) ..............................................................741 D.3.18. Alterações na distribuição 4.0.0 (Oct 2001: Alpha) .........................................................741 D.4. Alterações na distribuição 3.23.x (Recent; still supported) .............................................................743 D.4.1. Alterações na distribuição 3.23.59 (not released yet) .........................................................743 D.4.2. Alterações na distribuição 3.23.58 (11 Sep 2003) .............................................................744 D.4.3. Alterações na distribuição 3.23.57 (06 Jun 2003) .............................................................744 D.4.4. Alterações na distribuição 3.23.56 (13 Mar 2003) ............................................................745 D.4.5. Alterações na distribuição 3.23.55 (23 Jan 2003) .............................................................746 D.4.6. Alterações na distribuição 3.23.54 (05 Dec 2002) ............................................................746 D.4.7. Alterações na distribuição 3.23.53 (09 Oct 2002) .............................................................747 D.4.8. Alterações na distribuição 3.23.52 (14 Aug 2002) ............................................................747 D.4.9. Alterações na distribuição 3.23.51 (31 May 2002) ............................................................748 D.4.10. Alterações na distribuição 3.23.50 (21 Apr 2002) ...........................................................749 D.4.11. Alterações na distribuição 3.23.49 .............................................................................749 D.4.12. Alterações na distribuição 3.23.48 (07 Feb 2002) ...........................................................750 D.4.13. Alterações na distribuição 3.23.47 (27 Dec 2001) ...........................................................750 D.4.14. Alterações na distribuição 3.23.46 (29 Nov 2001) ...........................................................751 D.4.15. Alterações na distribuição 3.23.45 (22 Nov 2001) ...........................................................751 D.4.16. Alterações na distribuição 3.23.44 (31 Oct 2001) ...........................................................751 D.4.17. Alterações na distribuição 3.23.43 (04 Oct 2001) ...........................................................752 D.4.18. Alterações na distribuição 3.23.42 (08 Sep 2001) ...........................................................753 D.4.19. Alterações na distribuição 3.23.41 (11 Aug 2001) ...........................................................753 D.4.20. Alterações na distribuição 3.23.40 .............................................................................754 D.4.21. Alterações na distribuição 3.23.39 (12 Jun 2001) ............................................................754 D.4.22. Alterações na distribuição 3.23.38 (09 May 2001) ..........................................................755 D.4.23. Alterações na distribuição 3.23.37 (17 Apr 2001) ...........................................................756 D.4.24. Alterações na distribuição 3.23.36 (27 Mar 2001) ...........................................................756 D.4.25. Alterações na distribuição 3.23.35 (15 Mar 2001) ...........................................................757 D.4.26. Alterações na distribuição 3.23.34a ............................................................................757 D.4.27. Alterações na distribuição 3.23.34 (10 Mar 2001) ...........................................................757 D.4.28. Alterações na distribuição 3.23.33 (09 Feb 2001) ...........................................................758 D.4.29. Alterações na distribuição 3.23.32 (22 Jan 2001: Production) .............................................759 D.4.30. Alterações na distribuição 3.23.31 (17 Jan 2001) ............................................................759 D.4.31. Alterações na distribuição 3.23.30 (04 Jan 2001) ............................................................760 D.4.32. Alterações na distribuição 3.23.29 (16 Dec 2000) ...........................................................761 D.4.33. Alterações na distribuição 3.23.28 (22 Nov 2000: Gamma) ................................................762 D.4.34. Alterações na distribuição 3.23.27 (24 Oct 2000) ...........................................................763 D.4.35. Alterações na distribuição 3.23.26 (18 Oct 2000) ...........................................................764 D.4.36. Alterações na distribuição 3.23.25 (29 Sep 2000) ...........................................................764 D.4.37. Alterações na distribuição 3.23.24 (08 Sep 2000) ...........................................................765 D.4.38. Alterações na distribuição 3.23.23 (01 Sep 2000) ...........................................................766 D.4.39. Alterações na distribuição 3.23.22 (31 Jul 2000) ............................................................767 D.4.40. Alterações na distribuição 3.23.21 .............................................................................767 D.4.41. Alterações na distribuição 3.23.20 .............................................................................768 Manual de Referência do MySQL 4.1 xii
  • 13. D.4.42. Alterações na distribuição 3.23.19 .............................................................................768 D.4.43. Alterações na distribuição 3.23.18 .............................................................................768 D.4.44. Alterações na distribuição 3.23.17 .............................................................................769 D.4.45. Alterações na distribuição 3.23.16 .............................................................................769 D.4.46. Alterações na distribuição 3.23.15 (May 2000: Beta) .......................................................770 D.4.47. Alterações na distribuição 3.23.14 .............................................................................771 D.4.48. Alterações na distribuição 3.23.13 .............................................................................771 D.4.49. Alterações na distribuição 3.23.12 (07 Mar 2000) ...........................................................771 D.4.50. Alterações na distribuição 3.23.11 .............................................................................772 D.4.51. Alterações na distribuição 3.23.10 .............................................................................772 D.4.52. Alterações na distribuição 3.23.9 ...............................................................................773 D.4.53. Alterações na distribuição 3.23.8 (02 Jan 2000) .............................................................773 D.4.54. Alterações na distribuição 3.23.7 (10 Dec 1999) ............................................................774 D.4.55. Alterações na distribuição 3.23.6 ...............................................................................774 D.4.56. Alterações na distribuição 3.23.5 (20 Oct 1999) .............................................................775 D.4.57. Alterações na distribuição 3.23.4 (28 Sep 1999) .............................................................776 D.4.58. Alterações na distribuição 3.23.3 ...............................................................................776 D.4.59. Alterações na distribuição 3.23.2 (09 Aug 1999) ............................................................777 D.4.60. Alterações na distribuição 3.23.1 ...............................................................................777 D.4.61. Alterações na distribuição 3.23.0 (05 Aug 1999: Alpha) ...................................................778 D.5. Alterações na distribuição 3.22.x (Old; discontinued) ..................................................................779 D.5.1. Alterações na distribuição 3.22.35 ...............................................................................779 D.5.2. Alterações na distribuição 3.22.34 ...............................................................................780 D.5.3. Alterações na distribuição 3.22.33 ...............................................................................780 D.5.4. Alterações na distribuição 3.22.32 (14 Feb 2000) .............................................................780 D.5.5. Alterações na distribuição 3.22.31 ...............................................................................780 D.5.6. Alterações na distribuição 3.22.30 ...............................................................................780 D.5.7. Alterações na distribuição 3.22.29 (02 Jan 2000) .............................................................780 D.5.8. Alterações na distribuição 3.22.28 (20 Oct 1999) .............................................................781 D.5.9. Alterações na distribuição 3.22.27 ...............................................................................781 D.5.10. Alterações na distribuição 3.22.26 (16 Sep 1999) ...........................................................781 D.5.11. Alterações na distribuição 3.22.25 .............................................................................781 D.5.12. Alterações na distribuição 3.22.24 (05 Jul 1999) ............................................................781 D.5.13. Alterações na distribuição 3.22.23 (08 Jun 1999) ............................................................782 D.5.14. Alterações na distribuição 3.22.22 (30 Apr 1999) ...........................................................782 D.5.15. Alterações na distribuição 3.22.21 .............................................................................782 D.5.16. Alterações na distribuição 3.22.20 (18 Mar 1999) ...........................................................783 D.5.17. Alterações na distribuição 3.22.19 (Mar 1999: Production) ................................................783 D.5.18. Alterações na distribuição 3.22.18 .............................................................................783 D.5.19. Alterações na distribuição 3.22.17 .............................................................................783 D.5.20. Alterações na distribuição 3.22.16 (Feb 1999: Gamma) ....................................................783 D.5.21. Alterações na distribuição 3.22.15 .............................................................................783 D.5.22. Alterações na distribuição 3.22.14 .............................................................................784 D.5.23. Alterações na distribuição 3.22.13 .............................................................................784 D.5.24. Alterações na distribuição 3.22.12 .............................................................................784 D.5.25. Alterações na distribuição 3.22.11 .............................................................................785 D.5.26. Alterações na distribuição 3.22.10 .............................................................................785 D.5.27. Alterações na distribuição 3.22.9 ...............................................................................786 D.5.28. Alterações na distribuição 3.22.8 ...............................................................................786 D.5.29. Alterações na distribuição 3.22.7 (Sep 1998: Beta) .........................................................787 D.5.30. Alterações na distribuição 3.22.6 ...............................................................................787 D.5.31. Alterações na distribuição 3.22.5 ...............................................................................787 D.5.32. Alterações na distribuição 3.22.4 ...............................................................................788 D.5.33. Alterações na distribuição 3.22.3 ...............................................................................789 D.5.34. Alterações na distribuição 3.22.2 ...............................................................................789 D.5.35. Alterações na distribuição 3.22.1 (Jun 1998: Alpha) ........................................................790 D.5.36. Alterações na distribuição 3.22.0 ...............................................................................790 D.6. Alterações na distribuição 3.21.x ..........................................................................................791 D.6.1. Alterações na distribuição 3.21.33 ...............................................................................791 D.6.2. Alterações na distribuição 3.21.32 ...............................................................................791 D.6.3. Alterações na distribuição 3.21.31 ...............................................................................792 D.6.4. Alterações na distribuição 3.21.30 ...............................................................................792 D.6.5. Alterações na distribuição 3.21.29 ...............................................................................792 D.6.6. Alterações na distribuição 3.21.28 ...............................................................................793 D.6.7. Alterações na distribuição 3.21.27 ...............................................................................793 D.6.8. Alterações na distribuição 3.21.26 ...............................................................................793 D.6.9. Alterações na distribuição 3.21.25 ...............................................................................794 D.6.10. Alterações na distribuição 3.21.24 .............................................................................794 D.6.11. Alterações na distribuição 3.21.23 .............................................................................794 D.6.12. Alterações na distribuição 3.21.22 .............................................................................795 Manual de Referência do MySQL 4.1 xiii
  • 14. D.6.13. Alterações na distribuição 3.21.21a ............................................................................795 D.6.14. Alterações na distribuição 3.21.21 .............................................................................795 D.6.15. Alterações na distribuição 3.21.20 .............................................................................795 D.6.16. Alterações na distribuição 3.21.19 .............................................................................796 D.6.17. Alterações na distribuição 3.21.18 .............................................................................796 D.6.18. Alterações na distribuição 3.21.17 .............................................................................796 D.6.19. Alterações na distribuição 3.21.16 .............................................................................797 D.6.20. Alterações na distribuição 3.21.15 .............................................................................797 D.6.21. Alterações na distribuição 3.21.14b ............................................................................797 D.6.22. Alterações na distribuição 3.21.14a ............................................................................797 D.6.23. Alterações na distribuição 3.21.13 .............................................................................798 D.6.24. Alterações na distribuição 3.21.12 .............................................................................798 D.6.25. Alterações na distribuição 3.21.11 .............................................................................799 D.6.26. Alterações na distribuição 3.21.10 .............................................................................799 D.6.27. Alterações na distribuição 3.21.9 ...............................................................................800 D.6.28. Alterações na distribuição 3.21.8 ...............................................................................800 D.6.29. Alterações na distribuição 3.21.7 ...............................................................................800 D.6.30. Alterações na distribuição 3.21.6 ...............................................................................801 D.6.31. Alterações na distribuição 3.21.5 ...............................................................................801 D.6.32. Alterações na distribuição 3.21.4 ...............................................................................801 D.6.33. Alterações na distribuição 3.21.3 ...............................................................................801 D.6.34. Alterações na distribuição 3.21.2 ...............................................................................802 D.6.35. Alterações na distribuição 3.21.0 ...............................................................................802 D.7. Alterações na distribuição 3.20.x ..........................................................................................803 D.7.1. Alterações na distribuição 3.20.18 ...............................................................................803 D.7.2. Alterações na distribuição 3.20.17 ...............................................................................804 D.7.3. Alterações na distribuição 3.20.16 ...............................................................................804 D.7.4. Alterações na distribuição 3.20.15 ...............................................................................805 D.7.5. Alterações na distribuição 3.20.14 ...............................................................................805 D.7.6. Alterações na distribuição 3.20.13 ...............................................................................805 D.7.7. Alterações na distribuição 3.20.11 ...............................................................................806 D.7.8. Alterações na distribuição 3.20.10 ...............................................................................806 D.7.9. Alterações na distribuição 3.20.9 ................................................................................807 D.7.10. Alterações na distribuição 3.20.8 ...............................................................................807 D.7.11. Alterações na distribuição 3.20.7 ...............................................................................807 D.7.12. Alterações na distribuição 3.20.6 ...............................................................................807 D.7.13. Alterações na distribuição 3.20.3 ...............................................................................808 D.7.14. Alterações na distribuição 3.20.0 ...............................................................................809 D.8. Alterações na distribuição 3.19.x ..........................................................................................809 D.8.1. Alterações na distribuição 3.19.5 ................................................................................809 D.8.2. Alterações na distribuição 3.19.4 ................................................................................810 D.8.3. Alterações na distribuição 3.19.3 ................................................................................810 E. Portando para Outros Sistemas .......................................................................................................811 E.1. Depurando um Servidor MySQL ...........................................................................................811 E.1.1. Compilando o MYSQL para Depuração ........................................................................812 E.1.2. Criando Arquivos Trace (Rastreamento) ........................................................................812 E.1.3. Depurando o mysqld no gdb ......................................................................................813 E.1.4. Usando Stack Trace ................................................................................................814 E.1.5. Usando Arquivos de Log para Encontrar a Causa dos Erros no mysqld ....................................814 E.1.6. Fazendo um Caso de Teste Se Ocorre um Corrompimento de Tabela ......................................815 E.2. Depurando um cliente MySQL. ............................................................................................815 E.3. O Pacote DBUG ..............................................................................................................816 E.4. Métodos de Lock .............................................................................................................817 E.5. Comentários Sobre Threads RTS ..........................................................................................818 E.6. Diferença en Entre Alguns Pacotes de Threads ..........................................................................819 F. Variáveis de Ambientes do MySQL .................................................................................................820 G. Sintaxe de Expressões Regulares do MySQL ......................................................................................821 H. GPL - Licença Pública Geral do GNU ..............................................................................................824 Índice Remissivo ...........................................................................................................................828 Manual de Referência do MySQL 4.1 xiv
  • 15. Preface Este é o Manual de Referência para o Sistema de Banco de Dados MySQL. Este versão se refere a versão 5.0.6-beta do MySQL Server mas também se aplica a versões mais antigas (tais como 3.23 e 4.0-produção) já que as alterações são sempre in- dicadas. Também há referência a versão 5.0 (desenvolvimento). xv
  • 16. Capítulo 1. Informações Gerais O programa MySQL (R) é um servidor robusto de bancos de dados SQL (Structured Query Language - Linguagem Estruturada para Pesquisas) muito rápido, multi-tarefa e multi-usuário. O Servidor MySQL pode ser usado em sis- temas de produção com alta carga e missão crítica bem como pode ser embutido em programa de uso em massa. MySQL é uma marca registrada da MySQL AB. O programa MySQL é de Licença Dupla. Os usuários podem escolher entre usar o programa MySQL como um produto Open Source/Free Software sob os termos da GNU General Public License (http://www.fsf.org/licenses/) ou podem comprar uma licença comercial padrão da MySQL AB. See Secção 1.4, “Suporte e Licenciamento do MySQL”. O site web do MySQL (http://www.mysql.com/) dispõe das últimas informações sobre o programa MySQL. A seguinte lista descreve algumas seções de particular interesse neste manual: • Para informações sobre a empresa por trás do Servidor do Banco de Dados MySQL, veja Secção 1.3, “Visão Geral da MySQL AB”. • Para discussões das capacidades do Servidor do Banco de Dados MySQL, veja Secção 1.2.2, “As Principais Caracte- rísticas do MySQL”. • Para instruções de instalação, veja Capítulo 2, Instalação do MySQL. • Para dicas sobre a portabilidade do Servidor do Banco de Dados MySQL para novas arquiteturas ou sistemas opera- cionais, veja Apêndice E, Portando para Outros Sistemas. • Para informações sobre a atualização da versão 4.0, veja Secção 2.5.1, “Atualizando da Versão 4.0 para 4.1”. • Para informações sobre a atualização da versão 3.23, veja Secção 2.5.2, “Atualizando da Versão 3.23 para 4.0”. • Para informações sobre a atualização da versão 3.22, veja Secção 2.5.3, “Atualizando da versão 3.22 para 3.23”. • Para um tutorial de introdução ao Servidor do Banco de Dados MySQL, veja Capítulo 3, Tutorial de Introdução Do MySQL. • Para exemplos de SQL e informações sobre benchmarks, veja o diretório de benchmarks (sql-bench na distribuição). • Para o histórico de novos recursos e correções de erros, veja Apêndice D, Histórico de Alterações do MySQL. • Para uma lista de erros atualmente conhecidos e mal-funcionamento, veja Secção 1.8.6, “Erros Conhecidos e Deficiências de Projetos no MySQL”. • Para projetos futuros, veja Secção 1.6, “MySQL e o Futuro (o TODO)”. • Para ver a lista de todos os colaboradores deste projeto, veja Apêndice C, Colaboradores do MySQL. Importante: Relatórios de erros (também chamados bugs), bem como dúvidas e comentários, devem ser enviados para a lista de email geral do MySQL. See Secção 1.7.1.1, “As Listas de Discussão do MySQL”. See Secção 1.7.1.3, “Como relatar erros ou problemas”. O script mysqlbug deve ser usado para gerar comunicados de erros no Unix. (A distribuição do Windows contém um arquivo mysqlbug.txt no diretório base que pode ser usado como um template para um relatório de erro. Em distribuições fonte, o script mysqlbug pode ser encontrado no diretório scripts. Para distribuições binárias, o mysqlbug pode ser encontrado no diretório bin (/usr/bin para o pacote RMP do servidor MySQL. Se você encontrou um erro de segurança no Servidor MySQL, você deve enviar um email para <security@mysql.com>. 1.1. Sobre Este Manual Este é o manual de referência MySQL; ele documenta o MySQL até a versão 5.0.6-beta. Mudanças funcionais são sempre indicadas com referência a versão, assim este manual também pode ser utilizado caso você esteja utilizando uma versão mais antiga do MySQL (como 3.23 ou 4.0-produção). Também a referências a versão 5.0 (desenvolvimento). Sendo um manual de referência, ele não fornece instruções gerais sobre SQL ou conceitos de banco de dados relacionais. Como o Programa da Banco de Dados MySQL está sob constante desenvolvimento, o manual também é atualizado fre- 1