SlideShare ist ein Scribd-Unternehmen logo
1 von 919
Downloaden Sie, um offline zu lesen
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-21 (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 ............................................................................................................................................. xvi
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? ........................................................... 8
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 ................................................................................................ 12
1.4. Suporte e Licenciamento do MySQL ............................................................................................. 13
1.4.1. Suporte Oferecido pela MySQL AB .................................................................................... 13
1.4.2. Copyrights e Licenças Usadas pelo MySQL ........................................................................... 13
1.4.3. Licenças do MySQL ...................................................................................................... 13
1.4.4. Logomarcas e Marcas Registradas da MySQL AB ................................................................... 15
1.5. Mapa de Desenvolvimento do MySQL ........................................................................................... 16
1.5.1. MySQL 4.0 in a Nutshell ................................................................................................. 16
1.5.2. MySQL 4.1 in a Nutshell ................................................................................................. 18
1.5.3. MySQL 5.0, A Próxima Distribuição de Desenvolvimento ......................................................... 19
1.6. MySQL e o Futuro (o TODO) ..................................................................................................... 19
1.6.1. Novos Recursos Planejados Para a Versão 4.1 ........................................................................ 20
1.6.2. Novos Recursos Planejados Para a Versão 5.0 ........................................................................ 20
1.6.3. Novos Recursos Planejados Para a Versão 5.1 ........................................................................ 21
1.6.4. Novos Recursos Planejados Para a Versão em um Futuro Próximo ................................................ 21
1.6.5. Novos Recursos Planejados Para a Versão em um Futuro a Médio Prazo ......................................... 24
1.6.6. Novos Recursos que Não Planejamos Fazer ........................................................................... 25
1.7. Fontes de Informações do MySQL ................................................................................................ 25
1.7.1. Listas de Discussão MySQL ............................................................................................. 25
1.7.2. Suporte a Comunidade MySQL Atrvés do IRC (Internet Relay Chat) ............................................. 31
1.8. Qual compatibilidade aos padrões o MySQL oferece ? ........................................................................ 31
1.8.1. Qual Padrão o MySQL Segue? .......................................................................................... 32
1.8.2. Executando o MySQL no modo ANSI ................................................................................. 32
1.8.3. Extensões do MySQL para o Padrão SQL-92 ......................................................................... 32
1.8.4. Diferenças do MySQL em Comparação com o SQL-92 ............................................................. 35
1.8.5. Como o MySQL Lida com Restrições .................................................................................. 39
1.8.6. Erros Conhecidos e Deficiências de Projetos no MySQL ............................................................ 40
2. Instalação do MySQL ......................................................................................................................... 45
2.1. Instalação rápida padrão do MySQL .............................................................................................. 45
2.1.1. Instalando o MySQL no Windows ...................................................................................... 45
2.1.2. Instalando o MySQL no Linux .......................................................................................... 52
2.1.3. Instalando o MySQL no Mac OS X ..................................................................................... 54
2.1.4. Instalando o MySQL no NetWare ....................................................................................... 55
2.2. Detalhes Gerais de Instalação ...................................................................................................... 56
2.2.1. Como obter o MySQL .................................................................................................... 56
2.2.2. Verificando a Integridade do Pacote Usando MD5 Checksums ou GnuPG .................................... 57
2.2.3. Sistemas Operacionais suportados pelo MySQL ...................................................................... 58
2.2.4. Qual versão do MySQL deve ser usada ................................................................................ 60
2.2.5. Layouts de Instalação ..................................................................................................... 62
2.2.6. Como e quando as atualizações são lançadas? ........................................................................ 63
2.2.7. Filosofia das Distribuições - Nenhum Bug Conhecidos nas Distribuições ........................................ 64
2.2.8. Binários MySQL compilados pela MySQL AB ....................................................................... 65
2.2.9. Instalando uma Distribuição Binária do MySQL ..................................................................... 68
2.3. Instalando uma distribuição com fontes do MySQL ............................................................................ 71
2.3.1. Visão geral da instalação rápida ......................................................................................... 71
2.3.2. Aplicando patches ......................................................................................................... 73
2.3.3. Opções típicas do configure ......................................................................................... 74
iv
Manual de Referência do MySQL 4.1

2.3.4. Instalando pela árvore de fontes do desenvolvimento ................................................................ 76
2.3.5. Lidando com Problemas de Compilação ............................................................................... 78
2.3.6. Notas MIT-pthreads ....................................................................................................... 80
2.3.7. Instalando o MySQL a partir do Fonte no Windows ................................................................. 81
2.4. Configurações e Testes Pós-instalação ........................................................................................... 84
2.4.1. Problemas Executando o mysql_install_db .................................................................... 87
2.4.2. Problemas Inicializando o Servidor MySQL .......................................................................... 88
2.4.3. Inicializando e parando o MySQL automaticamente. ................................................................ 90
2.5. Atualizando/Desatualizando o MySQL ........................................................................................... 91
2.5.1. Atualizando da Versão 4.0 para 4.1 ..................................................................................... 91
2.5.2. Atualizando da Versão 3.23 para 4.0 ................................................................................... 93
2.5.3. Atualizando da versão 3.22 para 3.23 ................................................................................... 96
2.5.4. Atualizando da versão 3.21 para 3.22 ................................................................................... 98
2.5.5. Atualizando da versão 3.20 para 3.21 ................................................................................... 98
2.5.6. Atualizando a Tabela de Permissões .................................................................................... 99
2.5.7. Atualizando para outra arquitetura ...................................................................................... 99
2.5.8. Atualizando o MySQL no Windows .................................................................................. 100
2.6. Notas específicas para os Sistemas Operacionais ............................................................................. 101
2.6.1. Notas Windows .......................................................................................................... 101
2.6.2. Notas Linux (Todas as versões) ....................................................................................... 104
2.6.3. Notas Solaris ............................................................................................................. 109
2.6.4. Notas BSD ................................................................................................................ 113
2.6.5. Notas Mac OS X ......................................................................................................... 115
2.6.6. Notas de Outros Unix ................................................................................................... 116
2.6.7. Notas OS/2 ............................................................................................................... 124
2.6.8. Notas Novell NetWare .................................................................................................. 125
2.6.9. Notas BeOS .............................................................................................................. 125
2.7. Comentários de Instalação do Perl .............................................................................................. 125
2.7.1. Instalando Perl no Unix ................................................................................................. 125
2.7.2. Instalaando ActiveState Perl no Windows ........................................................................... 126
2.7.3. Problemas Usando a Interface Perl DBI/DBD ....................................................................... 126
3. Tutorial de Introdução Do MySQL ........................................................................................................ 129
3.1. Conectando e Desconectando do Servidor ..................................................................................... 129
3.2. Fazendo Consultas ................................................................................................................. 129
3.3. Criação e Utilização de um Banco de Dados .................................................................................. 132
3.3.1. Criando e Selecionando um Banco de Dados ........................................................................ 133
3.3.2. Criando uma Tabela ..................................................................................................... 133
3.3.3. Carregando dados em uma tabela ..................................................................................... 134
3.3.4. Recuperando Informações de uma Tabela ........................................................................... 135
3.4. Obtendo Informações Sobre Bancos de Dados e Tabelas .................................................................... 146
3.5. Utilizando mysql em Modo Batch ............................................................................................. 147
3.6. Exemplos de Consultas Comuns ................................................................................................. 148
3.6.1. O Valor Máximo para uma Coluna ................................................................................... 148
3.6.2. O Registro que Armazena o Valor Máximo para uma Coluna Determinada .................................... 149
3.6.3. Máximo da Coluna por Grupo ......................................................................................... 149
3.6.4. As Linhas Armazenando o Group-wise Máximo de um Certo Campo .......................................... 149
3.6.5. Utilizando Variáveis de Usuário ....................................................................................... 150
3.6.6. Utilizando Chaves Estrangeiras ....................................................................................... 151
3.6.7. Pesquisando em Duas Chaves ......................................................................................... 151
3.6.8. Calculando Visitas Diárias ............................................................................................. 152
3.6.9. Usando AUTO_INCREMENT .......................................................................................... 152
3.7. Consultas de Projetos Gêmeos ................................................................................................... 153
3.7.1. Encontrando Todos Gêmeos Não-distribuídos ...................................................................... 153
3.7.2. Mostrando uma Tabela sobre a Situação dos Pares Gêmeos ...................................................... 155
3.8. Utilizando MySQL com Apache ................................................................................................ 155
4. Administração do Bancos de Dados MySQL ............................................................................................ 157
4.1. Configurando o MySQL .......................................................................................................... 157
4.1.1. Opções de Linha de Comando do mysqld .......................................................................... 157
4.1.2. Arquivo de Opções my.cnf .......................................................................................... 164
4.2. Executando Múltiplos MySQL Servers na Mesma Máquina ................................................................ 166
4.2.1. Executando Múltiplos Servidores no Windows ..................................................................... 168
4.2.2. Executando Múltiplos Servidores no Unix ........................................................................... 170
4.2.3. Usando Programas Clientes em um Ambiente Multi-Servidor .................................................... 171
4.3. Detalhes Gerais de Segurança e o Sistema de Privilégio de Acesso do MySQL .......................................... 172
4.3.1. Segurança Geral ......................................................................................................... 172
v
Manual de Referência do MySQL 4.1

4.3.2. Como Tornar o MySQL Seguro contra Crackers ................................................................... 174
4.3.3. Opções de Inicialização para o mysqld em Relação a Segurança. .............................................. 175
4.3.4. Detalhes de Segurança com LOAD DATA LOCAL ................................................................ 176
4.3.5. O Que o Sistema de Privilégios Faz .................................................................................. 176
4.3.6. Como o Sistema de Privilégios Funciona ............................................................................ 176
4.3.7. Privilégios Fornecidos pelo MySQL .................................................................................. 179
4.3.8. Conectando ao Servidor MySQL ...................................................................................... 181
4.3.9. Controle de Acesso, Estágio 1: Verificação da Conexão .......................................................... 182
4.3.10. Controle de Acesso, Estágio 2: Verificação da Requisição ...................................................... 184
4.3.11. Hashing de Senhas no MySQL 4.1 .................................................................................. 186
4.3.12. Causas dos Erros de Accesso Negado .......................................................................... 189
4.4. Gerenciamento das Contas dos Usuários no MySQL ......................................................................... 192
4.4.1. A Sintaxe de GRANT e REVOKE ...................................................................................... 192
4.4.2. Nomes de Usuários e Senhas do MySQL ............................................................................ 196
4.4.3. Quando as Alterações nos Privilégios tem Efeito ................................................................... 197
4.4.4. Configurando os Privilégios Iniciais do MySQL .................................................................... 197
4.4.5. Adicionando Novos Usuários ao MySQL ............................................................................ 198
4.4.6. Deletando Usuários do MySQL ....................................................................................... 200
4.4.7. Limitando os Recursos dos Usuários ................................................................................. 201
4.4.8. Configurando Senhas ................................................................................................... 201
4.4.9. Mantendo Sua Senha Segura ........................................................................................... 202
4.4.10. Usando Conexões Seguras ............................................................................................ 203
4.5. Prevenção de Disastres e Recuperação ......................................................................................... 207
4.5.1. Backups dos Bancos de Dados ........................................................................................ 207
4.5.2. Sintaxe de BACKUP TABLE .......................................................................................... 209
4.5.3. Sintaxe de RESTORE TABLE ......................................................................................... 209
4.5.4. Sintaxe de CHECK TABLE ............................................................................................ 210
4.5.5. Sintaxe do REPAIR TABLE .......................................................................................... 211
4.5.6. Utilizando myisamchk para Manutenção de Tabelas e Recuperação em Caso de Falhas ................... 212
4.5.7. Configurando um Regime de Manutenção das Tabelas ............................................................ 221
4.5.8. Obtendo Informações sobre as Tabelas ............................................................................... 221
4.6. Adiministração do Banco de Dados e Referência de Linguagem ........................................................... 225
4.6.1. Sintaxe de OPTIMIZE TABLE ....................................................................................... 225
4.6.2. Sintaxe de ANALYZE TABLE ......................................................................................... 225
4.6.3. Sintaxe de CHECKSUM TABLE ....................................................................................... 226
4.6.4. Sintaxe de FLUSH ....................................................................................................... 226
4.6.5. Sintaxe de RESET ....................................................................................................... 227
4.6.6. Sintaxe de PURGE MASTER LOGS ................................................................................. 227
4.6.7. Sintaxe de KILL ......................................................................................................... 227
4.6.8. Sintaxe de SHOW ......................................................................................................... 228
4.7. Localização do MySQL e Utilização Internacional ........................................................................... 244
4.7.1. O Conjunto de Caracteres Utilizado para Dados e Ordenação .................................................... 244
4.7.2. Mensagens de Erros em Outras Línguas ............................................................................. 245
4.7.3. Adicionando um Novo Conjunto de Caracteres ..................................................................... 246
4.7.4. Os Vetores de Definições de Caracteres .............................................................................. 247
4.7.5. Suporte à Ordenação de Strings ....................................................................................... 248
4.7.6. Suporte à Caracteres Multi-byte ....................................................................................... 248
4.7.7. Problemas com Conjuntos de Caracteres ............................................................................. 248
4.8. Utilitários e Scripts do Lado do Servidor MySQL ............................................................................ 248
4.8.1. Visão Geral dos Scripts e Utilitários do Lado Servidor ............................................................ 248
4.8.2. mysqld-safe, o wrapper do mysqld ............................................................................. 249
4.8.3. mysqld_multi, programa para gerenciar múltiplos servidores MySQL ..................................... 250
4.8.4. myisampack, O Gerador de Tabelas Compactadas de Somente Leitura do MySQL ........................ 253
4.8.5. mysqld-max, om servidor mysqld extendido ................................................................... 258
4.9. Utilitários e Scripts do Lado do Cliente MySQL .............................................................................. 259
4.9.1. Visão Geral dos Utilitários e Scripts do Lado do Cliente .......................................................... 259
4.9.2. mysql, A Ferramenta de Linha de Comando ....................................................................... 261
4.9.3. mysqlcc, The MySQL Control Center ............................................................................. 268
4.9.4. mysqladmin, Administrando um Servidor MySQL .............................................................. 270
4.9.5. mysqlbinlog, Executando as Consultas a Partir de um Log Binário ......................................... 272
4.9.6. Usando mysqlcheck para Manutenção de Tabelas e Recuperação em Caso de Falhas ..................... 273
4.9.7. mysqldump, Descarregando a Estrutura de Tabelas e Dados .................................................... 275
4.9.8. mysqlhotcopy, Copiando Bancos de Dados e Tabelas do MySQL .......................................... 279
4.9.9. mysqlimport, Importando Dados de Arquivos Texto .......................................................... 280
4.9.10. mysqlshow, Exibindo Bancos de Dados, Tabelas e Colunas .................................................. 282
vi
Manual de Referência do MySQL 4.1

4.9.11. mysql_config, Opções para compilação do cliente MySQL ................................................ 283
4.9.12. perror, Explicando Códigos de Erros ............................................................................ 284
4.9.13. Como Executar Comandos SQL a Partir de um Arquivo Texto ................................................. 284
4.10. Os Arquivos de Log do MySQL ............................................................................................... 284
4.10.1. O Log de Erros ......................................................................................................... 285
4.10.2. O Log de Consultas .................................................................................................... 285
4.10.3. O Log de Atualizações ................................................................................................ 285
4.10.4. O Log Binário .......................................................................................................... 286
4.10.5. O Log para Consultas Lentas ......................................................................................... 288
4.10.6. Manutenção do Log de Arquivo ..................................................................................... 288
4.11. Replicação no MySQL .......................................................................................................... 289
4.11.1. Introdução ............................................................................................................... 289
4.11.2. Visão Geral da Implementação da Replicação ..................................................................... 290
4.11.3. Detalhes de Implementação da Replicação ......................................................................... 291
4.11.4. Como Configurar a Replicação ...................................................................................... 294
4.11.5. Recursos de Replicação e Problemas Conhecidos ................................................................. 297
4.11.6. Opções de Inicialização da Replicação ............................................................................. 299
4.11.7. Instruções SQL para Controle do Servidor Master ................................................................ 306
4.11.8. Instruções SQL para Controle do Servidor Slave .................................................................. 307
4.11.9. FAQ da Replicação .................................................................................................... 313
4.11.10. Problemas com Replicação .......................................................................................... 317
4.11.11. Relatando Problemas de Replicação ............................................................................... 318
5. Otimização do MySQL ...................................................................................................................... 320
5.1. Visão Geral da Otimização ....................................................................................................... 320
5.1.1. Limitações do Projeto MySQL/Trocas ............................................................................... 320
5.1.2. Portabilidade ............................................................................................................. 320
5.1.3. Para que Utilizamos o MySQL? ....................................................................................... 321
5.1.4. O Pacote de Benchmark do MySQL .................................................................................. 322
5.1.5. Utilizando seus Próprios Benchmarks ................................................................................ 323
5.2. Otimizando SELECTs e Outras Consultas ..................................................................................... 324
5.2.1. Sintaxe de EXPLAIN (Obter informações sobre uma SELECT) ................................................. 324
5.2.2. Estimando o Desempenho de uma Consulta ......................................................................... 330
5.2.3. Velocidade das Consultas que Utilizam SELECT .................................................................. 330
5.2.4. Como o MySQL Otimiza Cláusulas WHERE ........................................................................ 331
5.2.5. Como o MySQL Otimiza IS NULL ................................................................................. 332
5.2.6. Como o MySQL Otimiza Cláusulas DISTINCT ................................................................... 333
5.2.7. Como o MySQL Otimiza LEFT JOIN e RIGHT JOIN ......................................................... 333
5.2.8. Como o MySQL Otimiza Cláusulas ORDER BY ................................................................... 334
5.2.9. Como o MySQL Otimiza Cláusulas LIMIT ........................................................................ 335
5.2.10. Performance das Consultas que Utilizam INSERT ............................................................... 336
5.2.11. Performance das Consultas que Utilizam UPDATE ............................................................... 337
5.2.12. Performance das Consultas que Utilizam DELETE ............................................................... 337
5.2.13. Mais Dicas sobre Otimizações ....................................................................................... 337
5.3. Detalhes sobre Locks .............................................................................................................. 339
5.3.1. Como o MySQL Trava as Tabelas .................................................................................... 339
5.3.2. Detalhes sobre Lock de Tabelas ....................................................................................... 340
5.4. Otimizando a Estrutura de Banco de Dados .................................................................................... 341
5.4.1. Opções do Projeto ....................................................................................................... 341
5.4.2. Deixando os Dados com o Menor Tamanho Possível .............................................................. 342
5.4.3. Como o MySQL Utiliza Índices ....................................................................................... 342
5.4.4. Índices de Colunas ...................................................................................................... 344
5.4.5. Índices de Múltiplas Colunas .......................................................................................... 344
5.4.6. Como o MySQL Conta as Tabelas Abertas .......................................................................... 345
5.4.7. Como o MySQL Abre e Fecha as Tabelas ........................................................................... 345
5.4.8. Desvantagem em Criar um Número Grande de Tabelas no Mesmo Banco de Dados ......................... 346
5.5. Otimizando o Servidor MySQL ................................................................................................. 346
5.5.1. Sintonia dos Parâmetros em Tempo de Sistema/Compilação e na Inicialização ................................ 347
5.5.2. Parâmetros de Sintonia do Servidor ................................................................................... 347
5.5.3. Como a Compilação e a Ligação Afetam a Velocidade do MySQL ............................................. 349
5.5.4. Como o MySQL Utiliza a Memória .................................................................................. 350
5.5.5. Como o MySQL Utiliza o DNS ....................................................................................... 351
5.5.6. Sintaxe de SET ........................................................................................................... 351
5.6. Detalhes de Disco .................................................................................................................. 355
5.6.1. Utilizando Links Simbólicos ........................................................................................... 356
6. Referência de Linguagem do MySQL .................................................................................................... 359
vii
Manual de Referência do MySQL 4.1

6.1. Estrutura da Linguagem ........................................................................................................... 359
6.1.1. Literais: Como Gravar Strings e Numerais .......................................................................... 359
6.1.2. Nomes de Banco de dados, Tabela, Índice, Coluna e Alias ....................................................... 361
6.1.3. Caso Sensitivo nos Nomes ............................................................................................. 363
6.1.4. Variáveis de Usuário .................................................................................................... 363
6.1.5. Variáveis de Sistema .................................................................................................... 364
6.1.6. Sintaxe de Comentários ................................................................................................. 367
6.1.7. Tratamento de Palavras Reservadas no MySQL .................................................................... 367
6.2. Tipos de Campos ................................................................................................................... 370
6.2.1. Tipos Numéricos ......................................................................................................... 374
6.2.2. Tipos de Data e Hora .................................................................................................... 375
6.2.3. Tipos String .............................................................................................................. 381
6.2.4. Escolhendo o Tipo Correto para uma Coluna ....................................................................... 384
6.2.5. Usando Tipos de Colunas de Outros Mecanismos de Banco de Dados .......................................... 385
6.2.6. Exigências de Armazenamento dos Tipos de Coluna .............................................................. 385
6.3. Funções para Uso em Cláusulas SELECT e WHERE .......................................................................... 386
6.3.1. Operadores e Funções de Tipos não Especificados ................................................................. 387
6.3.2. Funções String ........................................................................................................... 393
6.3.3. Funções Numéricas ...................................................................................................... 403
6.3.4. Funções de Data e Hora ................................................................................................ 410
6.3.5. Funções de Conversão .................................................................................................. 423
6.3.6. Outras Funções ........................................................................................................... 425
6.3.7. Funções e Modificadores para Usar com Cláusulas GROUP BY ................................................. 434
6.4. Manipulação de Dados: SELECT, INSERT, UPDATE e DELETE ......................................................... 439
6.4.1. Sintaxe SELECT ......................................................................................................... 439
6.4.2. Sintaxe de Subquery .................................................................................................... 445
6.4.3. Sintaxe INSERT ......................................................................................................... 452
6.4.4. Sintaxe UPDATE ......................................................................................................... 456
6.4.5. Sintaxe DELETE ......................................................................................................... 457
6.4.6. Sintaxe TRUNCATE ..................................................................................................... 458
6.4.7. Sintaxe REPLACE ....................................................................................................... 459
6.4.8. Sintaxe LOAD DATA INFILE ....................................................................................... 459
6.4.9. Sintaxe HANDLER ....................................................................................................... 465
6.4.10. Sintaxe DO .............................................................................................................. 466
6.5. Definição de Dados: CREATE, DROP e ALTER ............................................................................... 466
6.5.1. Sintaxe CREATE DATABASE ......................................................................................... 466
6.5.2. Sintaxe DROP DATABASE ............................................................................................ 466
6.5.3. Sintaxe CREATE TABLE .............................................................................................. 467
6.5.4. Sintaxe ALTER TABLE ................................................................................................ 474
6.5.5. Sintaxe RENAME TABLE .............................................................................................. 477
6.5.6. Sintaxe DROP TABLE .................................................................................................. 477
6.5.7. Sintaxe CREATE INDEX .............................................................................................. 478
6.5.8. Sintaxe DROP INDEX .................................................................................................. 478
6.6. Comandos Utilitários Básicos do Usuário MySQL ........................................................................... 478
6.6.1. Sintaxe USE .............................................................................................................. 478
6.6.2. Sintaxe DESCRIBE (Obtem Informações Sobre Colunas) ........................................................ 479
6.7. Comandos Transacionais e de Lock do MySQL .............................................................................. 479
6.7.1. Sintaxe de START TRANSACTION, COMMIT e ROLLBACK .................................................... 479
6.7.2. Instruções que Não Podem Ser Desfeitas ............................................................................ 480
6.7.3. Instruções que Fazem um Commit Implicito ........................................................................ 480
6.7.4. Sintaxe de SAVEPOINT e ROLLBACK TO SAVEPOINT ....................................................... 480
6.7.5. Sintaxe LOCK TABLES e UNLOCK TABLES ..................................................................... 481
6.7.6. Sintaxe SET TRANSACTION ......................................................................................... 482
6.8. Pesquisa Full-text no MySQL .................................................................................................... 482
6.8.1. Restrições Full-text ...................................................................................................... 485
6.8.2. Ajuste Fino de Pesquisas Full-text no MySQL ...................................................................... 486
6.8.3. TODO de Pesquisas Full-text .......................................................................................... 487
6.9. Cache de Consultas do MySQL .................................................................................................. 487
6.9.1. Como a Cache de Consultas Opera ................................................................................... 487
6.9.2. Configuração da Cache de Consultas ................................................................................. 488
6.9.3. Opções da Cache de Consultas na SELECT ......................................................................... 489
6.9.4. Estado e Manutenção da Cache de Consultas ....................................................................... 489
7. Tipos de Tabela do MySQL ................................................................................................................ 491
7.1. Tabelas MyISAM ................................................................................................................... 491
7.1.1. Espaço Necessário para Chaves ....................................................................................... 493
viii
Manual de Referência do MySQL 4.1

7.1.2. Formatos de Tabelas MyISAM ......................................................................................... 494
7.1.3. Problemas com Tabelas MyISAM ..................................................................................... 495
7.2. Tabelas MERGE .................................................................................................................... 497
7.2.1. Problemas com Tabelas MERGE ....................................................................................... 499
7.3. Tabelas ISAM ...................................................................................................................... 499
7.4. Tabelas HEAP ...................................................................................................................... 500
7.5. Tabelas InnoDB ................................................................................................................... 501
7.5.1. Visão Geral de Tabelas InnoDB ....................................................................................... 501
7.5.2. InnoDB no MySQL Versão 3.23 ...................................................................................... 501
7.5.3. Opções de Inicialização do InnoDB .................................................................................. 502
7.5.4. Criando Tablespaces no InnoDB ...................................................................................... 506
7.5.5. Criando Tabelas InnoDB ............................................................................................... 507
7.5.6. Adicionando e Removendo Arquivos de Dados e Log do InnoDB ............................................... 511
7.5.7. Fazendo Backup e Recuperando um Banco de Dados InnoDB ................................................... 511
7.5.8. Movendo um Banco de Dados InnoDB para Outra Máquina ..................................................... 513
7.5.9. Modelo Transacional do InnoDB ...................................................................................... 513
7.5.10. Dicas de Ajuste de Desempenho ..................................................................................... 518
7.5.11. Implementação de Multi-versioning ................................................................................. 520
7.5.12. Estrutura de Tabelas e Índices ........................................................................................ 521
7.5.13. Gerenciamento do Espaço de Arquivos e E/S de Disco .......................................................... 522
7.5.14. Tratando Erros .......................................................................................................... 524
7.5.15. Restrições em Tabelas InnoDB ...................................................................................... 524
7.5.16. Histórico de Alterações do InnoDB ................................................................................. 525
7.5.17. Informações de Contato do InnoDB ................................................................................ 539
7.6. Tabelas BDB ou BerkeleyDB .................................................................................................. 539
7.6.1. Visão Geral de Tabelas BDB ........................................................................................... 539
7.6.2. Instalando BDB ........................................................................................................... 539
7.6.3. Opções de Inicialização do BDB ....................................................................................... 540
7.6.4. Características de Tabelas BDB: ....................................................................................... 540
7.6.5. Itens a serem corrigidos no BDB num futuro próximo: ............................................................. 541
7.6.6. Sistemas operacionais suportados pelo BDB ......................................................................... 542
7.6.7. Restrições em Tabelas BDB ............................................................................................ 542
7.6.8. Erros Que Podem Ocorrer Usando Tabelas BDB .................................................................... 542
8. Introdução ao MaxDB ....................................................................................................................... 544
8.1. Historia do MaxDB ................................................................................................................ 544
8.2. Licenciamento e Suporte .......................................................................................................... 544
8.3. Conceitos Básicos do MaxDB ................................................................................................... 544
8.4. Diferenças de Recursos entre o MaxDB e o MySQL ......................................................................... 544
8.5. Interoperability Features between MaxDB and MySQL ..................................................................... 545
8.6. Links Relacionados ao MaxDB .................................................................................................. 545
8.7. Palavras Reservadas no MaxDB ................................................................................................. 545
9. Conjunto de Caracteres Nacionais e Unicode ............................................................................................ 548
9.1. Conjuntos de Caracteres e Collations em Geral ............................................................................... 548
9.2. Conjunto de Caracteres e Collations no MySQL .............................................................................. 548
9.3. Determinando o Conjunto de Caracteres e Collation Padrões ............................................................... 549
9.3.1. Conjunto de Caracteres e Collations do Servidor ................................................................... 549
9.3.2. Conjunto de Caracteres e Collation de Banco de Dados ........................................................... 550
9.3.3. O Conjunto de Caracteres e Collations de Tabela ................................................................... 550
9.3.4. Conjunto de Caracteres e Collation de Colunas ..................................................................... 551
9.3.5. Exemplos de Atribuições de Conjuntos de Caracteres e Collation ............................................... 551
9.3.6. Conjunto de Caracteres e Collation de Conexão .................................................................... 552
9.3.7. Conjunto de Caracteres e Collation de Caracter de String Literal ................................................ 552
9.3.8. Cláusula COLLATE em Várias Partes de uma Consulta SQL ..................................................... 553
9.3.9. Precedência da Cláusula COLLATE ................................................................................... 554
9.3.10. Operador BINARY ..................................................................................................... 554
9.3.11. Alguns Casos Especiais Onde a Determinação da Collation e Trabalhosa ..................................... 554
9.3.12. Collations Devem Ser para o Conjunto de Caracteres Certo ..................................................... 555
9.3.13. Um exemplo do Efeito da Collation ................................................................................. 555
9.4. Operações Afetadas pelo Suporte a Conjunto de Caracteres ................................................................ 556
9.4.1. Strings de Resultados ................................................................................................... 556
9.4.2. CONVERT() ............................................................................................................. 556
9.4.3. CAST() .................................................................................................................. 557
9.4.4. SHOW CHARACTER SET ............................................................................................. 557
9.4.5. SHOW COLLATION .................................................................................................... 557
9.4.6. SHOW CREATE DATABASE ......................................................................................... 557
ix
Manual de Referência do MySQL 4.1

9.4.7. SHOW FULL COLUMNS ............................................................................................... 558
9.5. Suporte Unicode ................................................................................................................... 558
9.6. UTF8 para Metdados .............................................................................................................. 558
9.7. Compatibilidade com Outros SGBDs ........................................................................................... 559
9.8. Novo Formato do Arquivo de Configuração do Conjunto de Caracteres .................................................. 559
9.9. Conjunto de Caracteres Nacional ................................................................................................ 559
9.10. Atualizando para o MySQL 4.0 ................................................................................................ 560
9.10.1. Conjunto de Caracteres do MySQL e o Par/Conjunto de Caracter/Collation Correspondente do MySQL 4.1
...................................................................................................................................... 560
9.11. Os conjuntos de Caracteres e Collations que o MySQL Suporta .......................................................... 561
9.11.1. O Conjunto de Caracteres Unicode .................................................................................. 562
9.11.2. Conjunto de Caracteres para Plataformas Específicas ............................................................ 562
9.11.3. Conjunto de Caracteres do Sul da Europa e Oriente Médio ...................................................... 562
9.11.4. Os Conjuntos de Caracteres Asiáticos .............................................................................. 562
9.11.5. Os Conjuntos de Caracteres Bálticos ................................................................................ 562
9.11.6. Os Conjuntos de Caracteres Cirílicos ............................................................................... 563
9.11.7. O Conjunto de Caracteres da Europa Central ...................................................................... 563
9.11.8. Os Conjuntos de Caracteres da Europa Ocidental ................................................................. 564
10. Extensões Espacias em MySQL .......................................................................................................... 566
10.1. Introdução ......................................................................................................................... 566
10.2. O Modelo Geomátrico OpenGIS ............................................................................................... 566
10.2.1. A Hierarquia da Classe Geometry ................................................................................. 567
10.2.2. Classe Geometry ..................................................................................................... 568
10.2.3. Classe Point .......................................................................................................... 568
10.2.4. Classe Curve .......................................................................................................... 569
10.2.5. Classe LineString ................................................................................................. 569
10.2.6. Classe Surface ....................................................................................................... 569
10.2.7. Classe Polygon ....................................................................................................... 570
10.2.8. Classe GeometryCollection ................................................................................... 570
10.2.9. Classe MultiPoint ................................................................................................. 570
10.2.10. Classe MultiCurve ................................................................................................ 571
10.2.11. Classe MultiLineString (Multi Linhas) .................................................................... 571
10.2.12. Classe MultiSurface (Multi Superfícies) .................................................................... 571
10.2.13. Classe MultiPolygon (Multi Polígonos) ...................................................................... 571
10.3. Formatos de Dados Espaciais Suportados .................................................................................... 572
10.3.1. Formato Well-Known Text (WKT) ................................................................................. 572
10.3.2. Formato Well-Known Binary (WKB) ............................................................................... 573
10.4. Criando um Banco de Dados MySQL Habilitado Espacialmente ......................................................... 573
10.4.1. Tipos de Dados Espaciais do MySQL ............................................................................... 573
10.4.2. Criando Valores Espaciais ............................................................................................ 574
10.4.3. Criando Colunas Espaciais ........................................................................................... 577
10.4.4. Entrando com Dados em Colunas Espaciais ....................................................................... 577
10.4.5. Buscando Dados Espaciais ........................................................................................... 578
10.5. Analisando Informação Espacial ............................................................................................... 579
10.5.1. Funções Para Converter Geometrias Entre Formatos Diferentes ................................................ 579
10.5.2. Funções de Análise das Propriedades de Geometry ............................................................ 580
10.5.3. Funções Que Criam Novas Geometrias de Outras Existentes ................................................... 585
10.5.4. Funções Para Testar Relações Espaciais Entre Objetos Geométricos .......................................... 586
10.5.5. Relações de Retângulo de Limite Mínimo (Minimal Bounding Rectangles - MBR) em Geometrias ...... 586
10.5.6. Funções que Testam Relacionamentos Espaciais Entre Geometrias ............................................ 587
10.6. Otimizando Análises Espaciais ................................................................................................. 588
10.6.1. Criando Índices Espaciais ............................................................................................. 588
10.6.2. Usando Índice Espacial ............................................................................................... 589
10.7. Compatibilidade e Conformidade com o MySQL ........................................................................... 590
10.7.1. Recursos GIS Que Ainda Não Estão Implementados ............................................................. 590
11. Stored Procedures e Funções .............................................................................................................. 592
11.1. Sintaxe de Stored Procedure .................................................................................................... 592
11.1.1. Manutenção de Stored Procedures ................................................................................... 592
11.1.2. SHOW PROCEDURE STATUS e SHOW FUNCTION STATUS ............................................... 594
11.1.3. CALL ..................................................................................................................... 594
11.1.4. BEGIN ... END Compound Statement .......................................................................... 595
11.1.5. Instrução DECLARE ................................................................................................... 595
11.1.6. Variables in Stored Procedures ....................................................................................... 595
11.1.7. Condições e Handlers ................................................................................................. 595
11.1.8. Cursors .................................................................................................................. 597
x
Manual de Referência do MySQL 4.1

11.1.9. Flow Control Constructs .............................................................................................. 597
12. Ferramentas de Clientes e APIs do MySQL ............................................................................................ 600
12.1. API C do MySQL ................................................................................................................ 600
12.1.1. Tipos de Dados da API C ............................................................................................. 600
12.1.2. Visão Geral das Função da API C ................................................................................... 603
12.1.3. Descrição das Funções da API C .................................................................................... 605
12.1.4. Instruções Preparadas da API C ...................................................................................... 638
12.1.5. Tipos de Dados de Instruções Preparadas da API C .............................................................. 639
12.1.6. Visão Geral das Funções de Instruções Preparadas da API C ................................................... 641
12.1.7. Descrição das Funções de Instrução Preparada da API C ........................................................ 643
12.1.8. Tratando a Execução de Múltiplas Consultas na API C .......................................................... 657
12.1.9. Manipulando Valores de Data e Hora na API C ................................................................... 658
12.1.10. Descrição das Funções de Threads da API C ..................................................................... 659
12.1.11. Descrição das Funções do Servidor Embutido da API C ....................................................... 660
12.1.12. Dúvidas e problemas comuns ao utilzar a API C ................................................................ 661
12.1.13. Construindo Programas Clientes ................................................................................... 662
12.1.14. Como Fazer um Cliente em Threads ............................................................................... 662
12.1.15. libmysqld, a Biblioteca do Servidor Embutido MySQL ........................................................ 663
12.2. Suporte ODBC ao MySQL ..................................................................................................... 667
12.2.1. Como Instalar o MyODBC ........................................................................................... 667
12.2.2. Como Preencher os Vários Campos no Programa de Administração do ODBC .............................. 668
12.2.3. Parâmetros de Conexão do MyODBC .............................................................................. 668
12.2.4. Como Relatar Problemas com o MyODBC ........................................................................ 669
12.2.5. Programas que Funcionam com MyODBC ........................................................................ 670
12.2.6. Como Obter o Valor de uma Coluna AUTO_INCREMENT no ODBC ......................................... 674
12.2.7. Relatando Problemas com MyODBC ............................................................................... 674
12.3. Conectividade Java (JDBC) ao MySQL ...................................................................................... 675
12.4. API PHP do MySQL ............................................................................................................. 675
12.4.1. Problemas Comuns com MySQL e PHP ........................................................................... 675
12.5. API Perl do MySQL ............................................................................................................. 675
12.5.1. DBI com DBD::mysql .............................................................................................. 675
12.5.2. A interface DBI ........................................................................................................ 676
12.5.3. Mais Informações DBI/DBD .......................................................................................... 682
12.6. API C++ do MySQL ............................................................................................................. 682
12.6.1. Borland C++ ............................................................................................................ 682
12.7. API Python do MySQL .......................................................................................................... 682
12.8. API Tcl do MySQL .............................................................................................................. 682
12.9. Eiffel Wrapper do MySQL ...................................................................................................... 682
13. Tratamento de Erros no MySQL ......................................................................................................... 684
13.1. Erros Retornados ................................................................................................................. 684
14. Estendendo o MySQL ..................................................................................................................... 707
14.1. MySQL Internals ................................................................................................................. 707
14.1.1. Threads MySQL ........................................................................................................ 707
14.1.2. Pacotes de Teste do MySQL ......................................................................................... 707
14.2. Adicionando Novas Funções ao MySQL ..................................................................................... 709
14.2.1. Sintaxe CREATE FUNCTION/DROP FUNCTION .............................................................. 710
14.2.2. Adicionando Novas Funções Definidas Por Usuário .............................................................. 710
14.2.3. Adicionando uma Nova Função Nativa ............................................................................. 716
14.3. Adicionado Novos Procedimentos ao MySQL ............................................................................... 717
14.3.1. Análise de Procedimento .............................................................................................. 717
14.3.2. Escrevendo um Procedimento ........................................................................................ 718
A. Problemas e Erros Comuns ................................................................................................................ 719
A.1. Como Determinar o Que Está Causando Problemas ......................................................................... 719
A.2. Erros Comuns Usando o MySQL ............................................................................................... 720
A.2.1. Erro: Access Denied .............................................................................................. 720
A.2.2. Erro: MySQL server has gone away ....................................................................... 720
A.2.3. Erro: Can't connect to [local] MySQL server ................................................... 721
A.2.4. Erro: Client does not support authentication protocol ................................. 722
A.2.5. Erro: Host '...' is blocked ................................................................................ 722
A.2.6. Erro: Too many connections .................................................................................. 723
A.2.7. Erro: Some non-transactional changed tables couldn't be rolled back ........ 723
A.2.8. Erro: Out of memory .............................................................................................. 723
A.2.9. Erro: Packet too large ......................................................................................... 724
A.2.10. Erros de Comunicação / Comunicação Abortada ................................................................. 724
A.2.11. Erro: The table is full ...................................................................................... 725
xi
Manual de Referência do MySQL 4.1

A.2.12. Erro: Can't create/write to file ..................................................................... 725
A.2.13. Erro no Cliente: Commands out of sync ................................................................... 726
A.2.14. Erro: Ignoring user ............................................................................................. 726
A.2.15. Erro: Table 'xxx' doesn't exist ....................................................................... 726
A.2.16. Erro: Can't initialize character set xxx ....................................................... 727
A.2.17. Arquivo Não Encontrado ............................................................................................. 727
A.3. Assuntos Relacionados a Instalação ............................................................................................ 728
A.3.1. Problemas de Ligação com a Biblioteca do Cliente MySQL ..................................................... 728
A.3.2. Como Executar o MySQL Como Um Usuário Normal ............................................................ 728
A.3.3. Problemas com Permissões de Arquivos ............................................................................ 729
A.4. Assuntos Relacionados a Administração ...................................................................................... 729
A.4.1. O Que Fazer Se o MySQL Continua Falhando ..................................................................... 729
A.4.2. Como Recuperar uma Senha de Root Esquecida ................................................................... 731
A.4.3. Como o MySQL Trata de Discos Sem Espaço ..................................................................... 732
A.4.4. Onde o MySQL Armazena Arquivos Temporários ................................................................ 732
A.4.5. Como Proteger ou AlterarHow to Protect or Change the MySQL Socket File /tmp/mysql.sock ..... 733
A.4.6. Problemas Com Fuso Horário ......................................................................................... 734
A.5. Assuntos Relacionados a Consultas ............................................................................................ 734
A.5.1. Caso-Sensitivito em Pesquisas ........................................................................................ 734
A.5.2. Problemas Usando Colunas DATE ................................................................................... 734
A.5.3. Problemas com Valores NULL ........................................................................................ 735
A.5.4. Problemas com alias ................................................................................................ 736
A.5.5. Deletando Linhas de Tabelas Relacionadas ......................................................................... 736
A.5.6. Resolvendo Problemas Com Registros Não Encontrados ......................................................... 736
A.5.7. Problemas com Comparação de Ponto Flutuante ................................................................... 737
A.6. Assuntos Relacionados ao Otimizador ......................................................................................... 738
A.6.1. Camo evitar o varredura da tabela,,, .................................................................................. 739
A.7. Assuntos Relacionados a Definições de Tabelas ............................................................................. 739
A.7.1. Problemas com ALTER TABLE. ..................................................................................... 739
A.7.2. Como Alterar a Ordem das Colunas em Uma Tabela .............................................................. 740
A.7.3. Problemas com TEMPORARY TABLE ............................................................................ 740
B. Contribuição de Programas ................................................................................................................ 741
B.1. APIs ................................................................................................................................. 741
B.2. Conversores ........................................................................................................................ 743
B.3. Utilitários ........................................................................................................................... 743
C. Colaboradores do MySQL ................................................................................................................. 745
C.1. Desenvolvedores do MySQL .................................................................................................... 745
C.2. Coolaboradores do MySQL ...................................................................................................... 748
C.3. Responsáveis pela Documentação e Tradução ................................................................................ 752
C.4. Bibliotecas usadas e incluidas com o MySQL ................................................................................ 754
C.5. Pacotes que suportam o MySQL ................................................................................................ 754
C.6. Ferramentas que são usadas para criar o MySQL ............................................................................. 755
C.7. Responsáveis pelo Suporte do MySQL ........................................................................................ 755
D. Histórico de Alterações do MySQL ...................................................................................................... 757
D.1. Alterações na distribuição 5.0.0 (Development) .............................................................................. 757
D.2. Alterações na distribuição 4.1.x (Alpha) ....................................................................................... 757
D.2.1. Alterações na distribuição 4.1.2 (not released yet) ................................................................. 758
D.2.2. Alterações na distribuição 4.1.1 (01 de Dez de 2003) ............................................................. 759
D.2.3. Alterações na distribuição 4.1.0 (03 Apr 2003: Alpha) ............................................................ 762
D.3. Alterações na distribuição 4.0.x (Production) ................................................................................. 764
D.3.1. Alterações na distribuição 4.0.17 (not released yet) ............................................................... 764
D.3.2. Alterações na distribuição 4.0.16 (17 Out 2003) ................................................................... 766
D.3.3. Alterações na distribuição 4.0.15 (03 Sep 2003) ................................................................... 767
D.3.4. Alterações na distribuição 4.0.14 (18 Jul 2003) .................................................................... 771
D.3.5. Alterações na distribuição 4.0.13 (16 May 2003) .................................................................. 773
D.3.6. Alterações na distribuição 4.0.12 (15 Mar 2003: Production) .................................................... 776
D.3.7. Alterações na distribuição 4.0.11 (20 Feb 2003) ................................................................... 778
D.3.8. Alterações na distribuição 4.0.10 (29 Jan 2003) .................................................................... 778
D.3.9. Alterações na distribuição 4.0.9 (09 Jan 2003) ..................................................................... 780
D.3.10. Alterações na distribuição 4.0.8 (07 Jan 2003) .................................................................... 780
D.3.11. Alterações na distribuição 4.0.7 (20 Dec 2002) ................................................................... 781
D.3.12. Alterações na distribuição 4.0.6 (14 Dec 2002: Gamma) ........................................................ 781
D.3.13. Alterações na distribuição 4.0.5 (13 Nov 2002) ................................................................... 782
D.3.14. Alterações na distribuição 4.0.4 (29 Sep 2002) ................................................................... 784
D.3.15. Alterações na distribuição 4.0.3 (26 Aug 2002: Beta) ............................................................ 785
xii
Manual de Referência do MySQL 4.1

D.3.16. Alterações na distribuição 4.0.2 (01 Jul 2002) .................................................................... 787
D.3.17. Alterações na distribuição 4.0.1 (23 Dec 2001) ................................................................... 790
D.3.18. Alterações na distribuição 4.0.0 (Oct 2001: Alpha) .............................................................. 791
D.4. Alterações na distribuição 3.23.x (Recent; still supported) .................................................................. 793
D.4.1. Alterações na distribuição 3.23.59 (not released yet) .............................................................. 793
D.4.2. Alterações na distribuição 3.23.58 (11 Sep 2003) .................................................................. 794
D.4.3. Alterações na distribuição 3.23.57 (06 Jun 2003) .................................................................. 794
D.4.4. Alterações na distribuição 3.23.56 (13 Mar 2003) ................................................................. 795
D.4.5. Alterações na distribuição 3.23.55 (23 Jan 2003) .................................................................. 796
D.4.6. Alterações na distribuição 3.23.54 (05 Dec 2002) ................................................................. 796
D.4.7. Alterações na distribuição 3.23.53 (09 Oct 2002) .................................................................. 797
D.4.8. Alterações na distribuição 3.23.52 (14 Aug 2002) ................................................................. 798
D.4.9. Alterações na distribuição 3.23.51 (31 May 2002) ................................................................. 798
D.4.10. Alterações na distribuição 3.23.50 (21 Apr 2002) ................................................................ 799
D.4.11. Alterações na distribuição 3.23.49 .................................................................................. 800
D.4.12. Alterações na distribuição 3.23.48 (07 Feb 2002) ................................................................ 800
D.4.13. Alterações na distribuição 3.23.47 (27 Dec 2001) ................................................................ 801
D.4.14. Alterações na distribuição 3.23.46 (29 Nov 2001) ................................................................ 801
D.4.15. Alterações na distribuição 3.23.45 (22 Nov 2001) ................................................................ 802
D.4.16. Alterações na distribuição 3.23.44 (31 Oct 2001) ................................................................ 802
D.4.17. Alterações na distribuição 3.23.43 (04 Oct 2001) ................................................................ 803
D.4.18. Alterações na distribuição 3.23.42 (08 Sep 2001) ................................................................ 803
D.4.19. Alterações na distribuição 3.23.41 (11 Aug 2001) ................................................................ 804
D.4.20. Alterações na distribuição 3.23.40 .................................................................................. 805
D.4.21. Alterações na distribuição 3.23.39 (12 Jun 2001) ................................................................. 805
D.4.22. Alterações na distribuição 3.23.38 (09 May 2001) ............................................................... 806
D.4.23. Alterações na distribuição 3.23.37 (17 Apr 2001) ................................................................ 806
D.4.24. Alterações na distribuição 3.23.36 (27 Mar 2001) ................................................................ 807
D.4.25. Alterações na distribuição 3.23.35 (15 Mar 2001) ................................................................ 808
D.4.26. Alterações na distribuição 3.23.34a ................................................................................. 808
D.4.27. Alterações na distribuição 3.23.34 (10 Mar 2001) ................................................................ 808
D.4.28. Alterações na distribuição 3.23.33 (09 Feb 2001) ................................................................ 809
D.4.29. Alterações na distribuição 3.23.32 (22 Jan 2001: Production) .................................................. 810
D.4.30. Alterações na distribuição 3.23.31 (17 Jan 2001) ................................................................. 810
D.4.31. Alterações na distribuição 3.23.30 (04 Jan 2001) ................................................................. 811
D.4.32. Alterações na distribuição 3.23.29 (16 Dec 2000) ................................................................ 812
D.4.33. Alterações na distribuição 3.23.28 (22 Nov 2000: Gamma) ..................................................... 813
D.4.34. Alterações na distribuição 3.23.27 (24 Oct 2000) ................................................................ 815
D.4.35. Alterações na distribuição 3.23.26 (18 Oct 2000) ................................................................ 815
D.4.36. Alterações na distribuição 3.23.25 (29 Sep 2000) ................................................................ 816
D.4.37. Alterações na distribuição 3.23.24 (08 Sep 2000) ................................................................ 817
D.4.38. Alterações na distribuição 3.23.23 (01 Sep 2000) ................................................................ 817
D.4.39. Alterações na distribuição 3.23.22 (31 Jul 2000) ................................................................. 819
D.4.40. Alterações na distribuição 3.23.21 .................................................................................. 819
D.4.41. Alterações na distribuição 3.23.20 .................................................................................. 820
D.4.42. Alterações na distribuição 3.23.19 .................................................................................. 820
D.4.43. Alterações na distribuição 3.23.18 .................................................................................. 820
D.4.44. Alterações na distribuição 3.23.17 .................................................................................. 820
D.4.45. Alterações na distribuição 3.23.16 .................................................................................. 821
D.4.46. Alterações na distribuição 3.23.15 (May 2000: Beta) ............................................................ 822
D.4.47. Alterações na distribuição 3.23.14 .................................................................................. 822
D.4.48. Alterações na distribuição 3.23.13 .................................................................................. 823
D.4.49. Alterações na distribuição 3.23.12 (07 Mar 2000) ................................................................ 823
D.4.50. Alterações na distribuição 3.23.11 .................................................................................. 824
D.4.51. Alterações na distribuição 3.23.10 .................................................................................. 824
D.4.52. Alterações na distribuição 3.23.9 .................................................................................... 825
D.4.53. Alterações na distribuição 3.23.8 (02 Jan 2000) .................................................................. 825
D.4.54. Alterações na distribuição 3.23.7 (10 Dec 1999) ................................................................. 826
D.4.55. Alterações na distribuição 3.23.6 .................................................................................... 826
D.4.56. Alterações na distribuição 3.23.5 (20 Oct 1999) .................................................................. 827
D.4.57. Alterações na distribuição 3.23.4 (28 Sep 1999) .................................................................. 828
D.4.58. Alterações na distribuição 3.23.3 .................................................................................... 828
D.4.59. Alterações na distribuição 3.23.2 (09 Aug 1999) ................................................................. 829
D.4.60. Alterações na distribuição 3.23.1 .................................................................................... 830
D.4.61. Alterações na distribuição 3.23.0 (05 Aug 1999: Alpha) ........................................................ 830
xiii
Manual de Referência do MySQL 4.1

D.5. Alterações na distribuição 3.22.x (Old; discontinued) ....................................................................... 832
D.5.1. Alterações na distribuição 3.22.35 .................................................................................... 832
D.5.2. Alterações na distribuição 3.22.34 .................................................................................... 832
D.5.3. Alterações na distribuição 3.22.33 .................................................................................... 832
D.5.4. Alterações na distribuição 3.22.32 (14 Feb 2000) .................................................................. 832
D.5.5. Alterações na distribuição 3.22.31 .................................................................................... 832
D.5.6. Alterações na distribuição 3.22.30 .................................................................................... 833
D.5.7. Alterações na distribuição 3.22.29 (02 Jan 2000) .................................................................. 833
D.5.8. Alterações na distribuição 3.22.28 (20 Oct 1999) .................................................................. 833
D.5.9. Alterações na distribuição 3.22.27 .................................................................................... 833
D.5.10. Alterações na distribuição 3.22.26 (16 Sep 1999) ................................................................ 833
D.5.11. Alterações na distribuição 3.22.25 .................................................................................. 834
D.5.12. Alterações na distribuição 3.22.24 (05 Jul 1999) ................................................................. 834
D.5.13. Alterações na distribuição 3.22.23 (08 Jun 1999) ................................................................. 834
D.5.14. Alterações na distribuição 3.22.22 (30 Apr 1999) ................................................................ 834
D.5.15. Alterações na distribuição 3.22.21 .................................................................................. 835
D.5.16. Alterações na distribuição 3.22.20 (18 Mar 1999) ................................................................ 835
D.5.17. Alterações na distribuição 3.22.19 (Mar 1999: Production) ..................................................... 835
D.5.18. Alterações na distribuição 3.22.18 .................................................................................. 835
D.5.19. Alterações na distribuição 3.22.17 .................................................................................. 836
D.5.20. Alterações na distribuição 3.22.16 (Feb 1999: Gamma) ......................................................... 836
D.5.21. Alterações na distribuição 3.22.15 .................................................................................. 836
D.5.22. Alterações na distribuição 3.22.14 .................................................................................. 836
D.5.23. Alterações na distribuição 3.22.13 .................................................................................. 837
D.5.24. Alterações na distribuição 3.22.12 .................................................................................. 837
D.5.25. Alterações na distribuição 3.22.11 .................................................................................. 837
D.5.26. Alterações na distribuição 3.22.10 .................................................................................. 838
D.5.27. Alterações na distribuição 3.22.9 .................................................................................... 839
D.5.28. Alterações na distribuição 3.22.8 .................................................................................... 839
D.5.29. Alterações na distribuição 3.22.7 (Sep 1998: Beta) .............................................................. 839
D.5.30. Alterações na distribuição 3.22.6 .................................................................................... 840
D.5.31. Alterações na distribuição 3.22.5 .................................................................................... 840
D.5.32. Alterações na distribuição 3.22.4 .................................................................................... 841
D.5.33. Alterações na distribuição 3.22.3 .................................................................................... 842
D.5.34. Alterações na distribuição 3.22.2 .................................................................................... 842
D.5.35. Alterações na distribuição 3.22.1 (Jun 1998: Alpha) ............................................................. 843
D.5.36. Alterações na distribuição 3.22.0 .................................................................................... 843
D.6. Alterações na distribuição 3.21.x ............................................................................................... 844
D.6.1. Alterações na distribuição 3.21.33 .................................................................................... 844
D.6.2. Alterações na distribuição 3.21.32 .................................................................................... 845
D.6.3. Alterações na distribuição 3.21.31 .................................................................................... 845
D.6.4. Alterações na distribuição 3.21.30 .................................................................................... 845
D.6.5. Alterações na distribuição 3.21.29 .................................................................................... 846
D.6.6. Alterações na distribuição 3.21.28 .................................................................................... 846
D.6.7. Alterações na distribuição 3.21.27 .................................................................................... 846
D.6.8. Alterações na distribuição 3.21.26 .................................................................................... 847
D.6.9. Alterações na distribuição 3.21.25 .................................................................................... 847
D.6.10. Alterações na distribuição 3.21.24 .................................................................................. 847
D.6.11. Alterações na distribuição 3.21.23 .................................................................................. 847
D.6.12. Alterações na distribuição 3.21.22 .................................................................................. 848
D.6.13. Alterações na distribuição 3.21.21a ................................................................................. 849
D.6.14. Alterações na distribuição 3.21.21 .................................................................................. 849
D.6.15. Alterações na distribuição 3.21.20 .................................................................................. 849
D.6.16. Alterações na distribuição 3.21.19 .................................................................................. 849
D.6.17. Alterações na distribuição 3.21.18 .................................................................................. 849
D.6.18. Alterações na distribuição 3.21.17 .................................................................................. 850
D.6.19. Alterações na distribuição 3.21.16 .................................................................................. 850
D.6.20. Alterações na distribuição 3.21.15 .................................................................................. 850
D.6.21. Alterações na distribuição 3.21.14b ................................................................................. 851
D.6.22. Alterações na distribuição 3.21.14a ................................................................................. 851
D.6.23. Alterações na distribuição 3.21.13 .................................................................................. 852
D.6.24. Alterações na distribuição 3.21.12 .................................................................................. 852
D.6.25. Alterações na distribuição 3.21.11 .................................................................................. 853
D.6.26. Alterações na distribuição 3.21.10 .................................................................................. 853
D.6.27. Alterações na distribuição 3.21.9 .................................................................................... 853
xiv
Manual de Referência do MySQL 4.1

D.6.28. Alterações na distribuição 3.21.8 .................................................................................... 854
D.6.29. Alterações na distribuição 3.21.7 .................................................................................... 854
D.6.30. Alterações na distribuição 3.21.6 .................................................................................... 854
D.6.31. Alterações na distribuição 3.21.5 .................................................................................... 855
D.6.32. Alterações na distribuição 3.21.4 .................................................................................... 855
D.6.33. Alterações na distribuição 3.21.3 .................................................................................... 855
D.6.34. Alterações na distribuição 3.21.2 .................................................................................... 856
D.6.35. Alterações na distribuição 3.21.0 .................................................................................... 856
D.7. Alterações na distribuição 3.20.x ............................................................................................... 857
D.7.1. Alterações na distribuição 3.20.18 .................................................................................... 857
D.7.2. Alterações na distribuição 3.20.17 .................................................................................... 858
D.7.3. Alterações na distribuição 3.20.16 .................................................................................... 859
D.7.4. Alterações na distribuição 3.20.15 .................................................................................... 859
D.7.5. Alterações na distribuição 3.20.14 .................................................................................... 859
D.7.6. Alterações na distribuição 3.20.13 .................................................................................... 860
D.7.7. Alterações na distribuição 3.20.11 .................................................................................... 860
D.7.8. Alterações na distribuição 3.20.10 .................................................................................... 860
D.7.9. Alterações na distribuição 3.20.9 ..................................................................................... 861
D.7.10. Alterações na distribuição 3.20.8 .................................................................................... 861
D.7.11. Alterações na distribuição 3.20.7 .................................................................................... 861
D.7.12. Alterações na distribuição 3.20.6 .................................................................................... 862
D.7.13. Alterações na distribuição 3.20.3 .................................................................................... 863
D.7.14. Alterações na distribuição 3.20.0 .................................................................................... 863
D.8. Alterações na distribuição 3.19.x ............................................................................................... 864
D.8.1. Alterações na distribuição 3.19.5 ..................................................................................... 864
D.8.2. Alterações na distribuição 3.19.4 ..................................................................................... 864
D.8.3. Alterações na distribuição 3.19.3 ..................................................................................... 864
E. Portando para Outros Sistemas ............................................................................................................ 865
E.1. Depurando um Servidor MySQL ................................................................................................ 865
E.1.1. Compilando o MYSQL para Depuração ............................................................................. 866
E.1.2. Criando Arquivos Trace (Rastreamento) ............................................................................. 866
E.1.3. Depurando o mysqld no gdb ........................................................................................... 867
E.1.4. Usando Stack Trace ..................................................................................................... 868
E.1.5. Usando Arquivos de Log para Encontrar a Causa dos Erros no mysqld ......................................... 869
E.1.6. Fazendo um Caso de Teste Se Ocorre um Corrompimento de Tabela ........................................... 869
E.2. Depurando um cliente MySQL. ................................................................................................. 870
E.3. O Pacote DBUG ................................................................................................................... 870
E.4. Métodos de Lock .................................................................................................................. 871
E.5. Comentários Sobre Threads RTS ............................................................................................... 872
E.6. Diferença en Entre Alguns Pacotes de Threads ............................................................................... 873
F. Variáveis de Ambientes do MySQL ...................................................................................................... 875
G. Sintaxe de Expressões Regulares do MySQL ........................................................................................... 876
H. GPL - Licença Pública Geral do GNU ................................................................................................... 879
Índice Remissivo ................................................................................................................................ 883

xv
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 indicadas. Também há referência a versão 5.0 (desenvolvimento).

xvi
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql
Manual - Mysql

Weitere ähnliche Inhalte

Was ist angesagt?

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
MySQL Brasil
 

Was ist angesagt? (14)

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
 
Rslinx classic portugues
Rslinx classic portuguesRslinx classic portugues
Rslinx classic portugues
 
Replicação MySQL e PHP
Replicação MySQL e PHPReplicação MySQL e PHP
Replicação MySQL e PHP
 
Arquiteturas de referência MySQL
Arquiteturas de referência MySQLArquiteturas de referência MySQL
Arquiteturas de referência MySQL
 
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
 
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
 
MySQL Alta Performance & Alta Disponibilidade
MySQL Alta Performance & Alta DisponibilidadeMySQL Alta Performance & Alta Disponibilidade
MySQL Alta Performance & Alta Disponibilidade
 
Novidades do Universo MySQL julho-15
Novidades do Universo MySQL julho-15Novidades do Universo MySQL julho-15
Novidades do Universo MySQL julho-15
 
Apostila sql
Apostila sqlApostila sql
Apostila sql
 
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
 
Desenvolvendo serviços escaláveis e de alta performance com MySQL
Desenvolvendo serviços escaláveis e de alta performance com MySQLDesenvolvendo serviços escaláveis e de alta performance com MySQL
Desenvolvendo serviços escaláveis e de alta performance com MySQL
 
MySQL Cluster - visão geral
MySQL Cluster - visão geralMySQL Cluster - visão geral
MySQL Cluster - visão geral
 
Tdc2015
Tdc2015Tdc2015
Tdc2015
 

Andere mochten auch

Php do início ao profissional
Php do início ao profissionalPhp do início ao profissional
Php do início ao profissional
André Pfeiffer
 

Andere mochten auch (13)

2 aula do curso de automação
2 aula do curso de automação2 aula do curso de automação
2 aula do curso de automação
 
4 aula do curso de automação - Arduino
4 aula do curso de automação - Arduino4 aula do curso de automação - Arduino
4 aula do curso de automação - Arduino
 
3 aula do curso de automação - Arduino
3 aula do curso de automação - Arduino3 aula do curso de automação - Arduino
3 aula do curso de automação - Arduino
 
Java não é tão difícil quanto parece
Java não é tão difícil quanto pareceJava não é tão difícil quanto parece
Java não é tão difícil quanto parece
 
1 aula do curso de automação - Arduino
1 aula do curso de automação - Arduino1 aula do curso de automação - Arduino
1 aula do curso de automação - Arduino
 
Robótica e PHP com Arduino - PHPn' Rio 2011
Robótica e PHP com Arduino - PHPn' Rio 2011Robótica e PHP com Arduino - PHPn' Rio 2011
Robótica e PHP com Arduino - PHPn' Rio 2011
 
Php do início ao profissional
Php do início ao profissionalPhp do início ao profissional
Php do início ao profissional
 
PHP e MySQL para iniciantes
PHP e MySQL para iniciantesPHP e MySQL para iniciantes
PHP e MySQL para iniciantes
 
Php e mysql aplicacao completa a partir do zero
Php e mysql   aplicacao completa a partir do zeroPhp e mysql   aplicacao completa a partir do zero
Php e mysql aplicacao completa a partir do zero
 
Arduino - Dicas & Truques
Arduino - Dicas & TruquesArduino - Dicas & Truques
Arduino - Dicas & Truques
 
Curso de Arduino Completo
Curso de Arduino CompletoCurso de Arduino Completo
Curso de Arduino Completo
 
Curso de PHP Básico ao Avançado
Curso de PHP Básico ao AvançadoCurso de PHP Básico ao Avançado
Curso de PHP Básico ao Avançado
 
Arduino introdução - 10 projectos
Arduino   introdução - 10 projectosArduino   introdução - 10 projectos
Arduino introdução - 10 projectos
 

Ähnlich wie Manual - Mysql

Java web fj21-- apostila da caelum
Java web fj21-- apostila da caelumJava web fj21-- apostila da caelum
Java web fj21-- apostila da caelum
Agenor Neto
 
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
robinhoct
 
Manual magalhaes
Manual magalhaesManual magalhaes
Manual magalhaes
viagens
 
Apostila dreamweaver-cs5
Apostila dreamweaver-cs5Apostila dreamweaver-cs5
Apostila dreamweaver-cs5
aulaemvideo
 
teamviewer_manual_pt
teamviewer_manual_ptteamviewer_manual_pt
teamviewer_manual_pt
Selma Donato
 

Ähnlich wie Manual - Mysql (20)

Refman 4.1-pt.a4
Refman 4.1-pt.a4Refman 4.1-pt.a4
Refman 4.1-pt.a4
 
Apostila Tutorial CakePHP
Apostila Tutorial CakePHPApostila Tutorial CakePHP
Apostila Tutorial CakePHP
 
Caelum java-web-fj21
Caelum java-web-fj21Caelum java-web-fj21
Caelum java-web-fj21
 
Java web fj21-- apostila da caelum
Java web fj21-- apostila da caelumJava web fj21-- apostila da caelum
Java web fj21-- apostila da caelum
 
Installdebian
InstalldebianInstalldebian
Installdebian
 
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
 
Modulare i 01_11
Modulare i 01_11Modulare i 01_11
Modulare i 01_11
 
Oracle
OracleOracle
Oracle
 
K19 k32-desenvolvimento-web-com-aspnet-mvc
K19 k32-desenvolvimento-web-com-aspnet-mvcK19 k32-desenvolvimento-web-com-aspnet-mvc
K19 k32-desenvolvimento-web-com-aspnet-mvc
 
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
 
Cake php cookbook
Cake php cookbookCake php cookbook
Cake php cookbook
 
K19 k12-desenvolvimento-web-com-jsf2-e-jpa2
K19 k12-desenvolvimento-web-com-jsf2-e-jpa2K19 k12-desenvolvimento-web-com-jsf2-e-jpa2
K19 k12-desenvolvimento-web-com-jsf2-e-jpa2
 
Manual magalhaes
Manual magalhaesManual magalhaes
Manual magalhaes
 
Slackbookptbr 1.0.2
Slackbookptbr 1.0.2Slackbookptbr 1.0.2
Slackbookptbr 1.0.2
 
Asp dot net e learning
Asp dot net e learningAsp dot net e learning
Asp dot net e learning
 
Curso delphi 7 nova
Curso delphi 7 novaCurso delphi 7 nova
Curso delphi 7 nova
 
Guia Ubuntu Server
Guia Ubuntu ServerGuia Ubuntu Server
Guia Ubuntu Server
 
Ubuntuserverguide 111121194031-phpapp02
Ubuntuserverguide 111121194031-phpapp02Ubuntuserverguide 111121194031-phpapp02
Ubuntuserverguide 111121194031-phpapp02
 
Apostila dreamweaver-cs5
Apostila dreamweaver-cs5Apostila dreamweaver-cs5
Apostila dreamweaver-cs5
 
teamviewer_manual_pt
teamviewer_manual_ptteamviewer_manual_pt
teamviewer_manual_pt
 

Kürzlich hochgeladen

Kürzlich hochgeladen (8)

Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object Calisthenics
 
Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemplo
 
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
 
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
 
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docxATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
 
Luís Kitota AWS Discovery Day Ka Solution.pdf
Luís Kitota AWS Discovery Day Ka Solution.pdfLuís Kitota AWS Discovery Day Ka Solution.pdf
Luís Kitota AWS Discovery Day Ka Solution.pdf
 
Programação Orientada a Objetos - 4 Pilares.pdf
Programação Orientada a Objetos - 4 Pilares.pdfProgramação Orientada a Objetos - 4 Pilares.pdf
Programação Orientada a Objetos - 4 Pilares.pdf
 

Manual - Mysql

  • 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-21 (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 ............................................................................................................................................. xvi 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? ........................................................... 8 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 ................................................................................................ 12 1.4. Suporte e Licenciamento do MySQL ............................................................................................. 13 1.4.1. Suporte Oferecido pela MySQL AB .................................................................................... 13 1.4.2. Copyrights e Licenças Usadas pelo MySQL ........................................................................... 13 1.4.3. Licenças do MySQL ...................................................................................................... 13 1.4.4. Logomarcas e Marcas Registradas da MySQL AB ................................................................... 15 1.5. Mapa de Desenvolvimento do MySQL ........................................................................................... 16 1.5.1. MySQL 4.0 in a Nutshell ................................................................................................. 16 1.5.2. MySQL 4.1 in a Nutshell ................................................................................................. 18 1.5.3. MySQL 5.0, A Próxima Distribuição de Desenvolvimento ......................................................... 19 1.6. MySQL e o Futuro (o TODO) ..................................................................................................... 19 1.6.1. Novos Recursos Planejados Para a Versão 4.1 ........................................................................ 20 1.6.2. Novos Recursos Planejados Para a Versão 5.0 ........................................................................ 20 1.6.3. Novos Recursos Planejados Para a Versão 5.1 ........................................................................ 21 1.6.4. Novos Recursos Planejados Para a Versão em um Futuro Próximo ................................................ 21 1.6.5. Novos Recursos Planejados Para a Versão em um Futuro a Médio Prazo ......................................... 24 1.6.6. Novos Recursos que Não Planejamos Fazer ........................................................................... 25 1.7. Fontes de Informações do MySQL ................................................................................................ 25 1.7.1. Listas de Discussão MySQL ............................................................................................. 25 1.7.2. Suporte a Comunidade MySQL Atrvés do IRC (Internet Relay Chat) ............................................. 31 1.8. Qual compatibilidade aos padrões o MySQL oferece ? ........................................................................ 31 1.8.1. Qual Padrão o MySQL Segue? .......................................................................................... 32 1.8.2. Executando o MySQL no modo ANSI ................................................................................. 32 1.8.3. Extensões do MySQL para o Padrão SQL-92 ......................................................................... 32 1.8.4. Diferenças do MySQL em Comparação com o SQL-92 ............................................................. 35 1.8.5. Como o MySQL Lida com Restrições .................................................................................. 39 1.8.6. Erros Conhecidos e Deficiências de Projetos no MySQL ............................................................ 40 2. Instalação do MySQL ......................................................................................................................... 45 2.1. Instalação rápida padrão do MySQL .............................................................................................. 45 2.1.1. Instalando o MySQL no Windows ...................................................................................... 45 2.1.2. Instalando o MySQL no Linux .......................................................................................... 52 2.1.3. Instalando o MySQL no Mac OS X ..................................................................................... 54 2.1.4. Instalando o MySQL no NetWare ....................................................................................... 55 2.2. Detalhes Gerais de Instalação ...................................................................................................... 56 2.2.1. Como obter o MySQL .................................................................................................... 56 2.2.2. Verificando a Integridade do Pacote Usando MD5 Checksums ou GnuPG .................................... 57 2.2.3. Sistemas Operacionais suportados pelo MySQL ...................................................................... 58 2.2.4. Qual versão do MySQL deve ser usada ................................................................................ 60 2.2.5. Layouts de Instalação ..................................................................................................... 62 2.2.6. Como e quando as atualizações são lançadas? ........................................................................ 63 2.2.7. Filosofia das Distribuições - Nenhum Bug Conhecidos nas Distribuições ........................................ 64 2.2.8. Binários MySQL compilados pela MySQL AB ....................................................................... 65 2.2.9. Instalando uma Distribuição Binária do MySQL ..................................................................... 68 2.3. Instalando uma distribuição com fontes do MySQL ............................................................................ 71 2.3.1. Visão geral da instalação rápida ......................................................................................... 71 2.3.2. Aplicando patches ......................................................................................................... 73 2.3.3. Opções típicas do configure ......................................................................................... 74 iv
  • 5. Manual de Referência do MySQL 4.1 2.3.4. Instalando pela árvore de fontes do desenvolvimento ................................................................ 76 2.3.5. Lidando com Problemas de Compilação ............................................................................... 78 2.3.6. Notas MIT-pthreads ....................................................................................................... 80 2.3.7. Instalando o MySQL a partir do Fonte no Windows ................................................................. 81 2.4. Configurações e Testes Pós-instalação ........................................................................................... 84 2.4.1. Problemas Executando o mysql_install_db .................................................................... 87 2.4.2. Problemas Inicializando o Servidor MySQL .......................................................................... 88 2.4.3. Inicializando e parando o MySQL automaticamente. ................................................................ 90 2.5. Atualizando/Desatualizando o MySQL ........................................................................................... 91 2.5.1. Atualizando da Versão 4.0 para 4.1 ..................................................................................... 91 2.5.2. Atualizando da Versão 3.23 para 4.0 ................................................................................... 93 2.5.3. Atualizando da versão 3.22 para 3.23 ................................................................................... 96 2.5.4. Atualizando da versão 3.21 para 3.22 ................................................................................... 98 2.5.5. Atualizando da versão 3.20 para 3.21 ................................................................................... 98 2.5.6. Atualizando a Tabela de Permissões .................................................................................... 99 2.5.7. Atualizando para outra arquitetura ...................................................................................... 99 2.5.8. Atualizando o MySQL no Windows .................................................................................. 100 2.6. Notas específicas para os Sistemas Operacionais ............................................................................. 101 2.6.1. Notas Windows .......................................................................................................... 101 2.6.2. Notas Linux (Todas as versões) ....................................................................................... 104 2.6.3. Notas Solaris ............................................................................................................. 109 2.6.4. Notas BSD ................................................................................................................ 113 2.6.5. Notas Mac OS X ......................................................................................................... 115 2.6.6. Notas de Outros Unix ................................................................................................... 116 2.6.7. Notas OS/2 ............................................................................................................... 124 2.6.8. Notas Novell NetWare .................................................................................................. 125 2.6.9. Notas BeOS .............................................................................................................. 125 2.7. Comentários de Instalação do Perl .............................................................................................. 125 2.7.1. Instalando Perl no Unix ................................................................................................. 125 2.7.2. Instalaando ActiveState Perl no Windows ........................................................................... 126 2.7.3. Problemas Usando a Interface Perl DBI/DBD ....................................................................... 126 3. Tutorial de Introdução Do MySQL ........................................................................................................ 129 3.1. Conectando e Desconectando do Servidor ..................................................................................... 129 3.2. Fazendo Consultas ................................................................................................................. 129 3.3. Criação e Utilização de um Banco de Dados .................................................................................. 132 3.3.1. Criando e Selecionando um Banco de Dados ........................................................................ 133 3.3.2. Criando uma Tabela ..................................................................................................... 133 3.3.3. Carregando dados em uma tabela ..................................................................................... 134 3.3.4. Recuperando Informações de uma Tabela ........................................................................... 135 3.4. Obtendo Informações Sobre Bancos de Dados e Tabelas .................................................................... 146 3.5. Utilizando mysql em Modo Batch ............................................................................................. 147 3.6. Exemplos de Consultas Comuns ................................................................................................. 148 3.6.1. O Valor Máximo para uma Coluna ................................................................................... 148 3.6.2. O Registro que Armazena o Valor Máximo para uma Coluna Determinada .................................... 149 3.6.3. Máximo da Coluna por Grupo ......................................................................................... 149 3.6.4. As Linhas Armazenando o Group-wise Máximo de um Certo Campo .......................................... 149 3.6.5. Utilizando Variáveis de Usuário ....................................................................................... 150 3.6.6. Utilizando Chaves Estrangeiras ....................................................................................... 151 3.6.7. Pesquisando em Duas Chaves ......................................................................................... 151 3.6.8. Calculando Visitas Diárias ............................................................................................. 152 3.6.9. Usando AUTO_INCREMENT .......................................................................................... 152 3.7. Consultas de Projetos Gêmeos ................................................................................................... 153 3.7.1. Encontrando Todos Gêmeos Não-distribuídos ...................................................................... 153 3.7.2. Mostrando uma Tabela sobre a Situação dos Pares Gêmeos ...................................................... 155 3.8. Utilizando MySQL com Apache ................................................................................................ 155 4. Administração do Bancos de Dados MySQL ............................................................................................ 157 4.1. Configurando o MySQL .......................................................................................................... 157 4.1.1. Opções de Linha de Comando do mysqld .......................................................................... 157 4.1.2. Arquivo de Opções my.cnf .......................................................................................... 164 4.2. Executando Múltiplos MySQL Servers na Mesma Máquina ................................................................ 166 4.2.1. Executando Múltiplos Servidores no Windows ..................................................................... 168 4.2.2. Executando Múltiplos Servidores no Unix ........................................................................... 170 4.2.3. Usando Programas Clientes em um Ambiente Multi-Servidor .................................................... 171 4.3. Detalhes Gerais de Segurança e o Sistema de Privilégio de Acesso do MySQL .......................................... 172 4.3.1. Segurança Geral ......................................................................................................... 172 v
  • 6. Manual de Referência do MySQL 4.1 4.3.2. Como Tornar o MySQL Seguro contra Crackers ................................................................... 174 4.3.3. Opções de Inicialização para o mysqld em Relação a Segurança. .............................................. 175 4.3.4. Detalhes de Segurança com LOAD DATA LOCAL ................................................................ 176 4.3.5. O Que o Sistema de Privilégios Faz .................................................................................. 176 4.3.6. Como o Sistema de Privilégios Funciona ............................................................................ 176 4.3.7. Privilégios Fornecidos pelo MySQL .................................................................................. 179 4.3.8. Conectando ao Servidor MySQL ...................................................................................... 181 4.3.9. Controle de Acesso, Estágio 1: Verificação da Conexão .......................................................... 182 4.3.10. Controle de Acesso, Estágio 2: Verificação da Requisição ...................................................... 184 4.3.11. Hashing de Senhas no MySQL 4.1 .................................................................................. 186 4.3.12. Causas dos Erros de Accesso Negado .......................................................................... 189 4.4. Gerenciamento das Contas dos Usuários no MySQL ......................................................................... 192 4.4.1. A Sintaxe de GRANT e REVOKE ...................................................................................... 192 4.4.2. Nomes de Usuários e Senhas do MySQL ............................................................................ 196 4.4.3. Quando as Alterações nos Privilégios tem Efeito ................................................................... 197 4.4.4. Configurando os Privilégios Iniciais do MySQL .................................................................... 197 4.4.5. Adicionando Novos Usuários ao MySQL ............................................................................ 198 4.4.6. Deletando Usuários do MySQL ....................................................................................... 200 4.4.7. Limitando os Recursos dos Usuários ................................................................................. 201 4.4.8. Configurando Senhas ................................................................................................... 201 4.4.9. Mantendo Sua Senha Segura ........................................................................................... 202 4.4.10. Usando Conexões Seguras ............................................................................................ 203 4.5. Prevenção de Disastres e Recuperação ......................................................................................... 207 4.5.1. Backups dos Bancos de Dados ........................................................................................ 207 4.5.2. Sintaxe de BACKUP TABLE .......................................................................................... 209 4.5.3. Sintaxe de RESTORE TABLE ......................................................................................... 209 4.5.4. Sintaxe de CHECK TABLE ............................................................................................ 210 4.5.5. Sintaxe do REPAIR TABLE .......................................................................................... 211 4.5.6. Utilizando myisamchk para Manutenção de Tabelas e Recuperação em Caso de Falhas ................... 212 4.5.7. Configurando um Regime de Manutenção das Tabelas ............................................................ 221 4.5.8. Obtendo Informações sobre as Tabelas ............................................................................... 221 4.6. Adiministração do Banco de Dados e Referência de Linguagem ........................................................... 225 4.6.1. Sintaxe de OPTIMIZE TABLE ....................................................................................... 225 4.6.2. Sintaxe de ANALYZE TABLE ......................................................................................... 225 4.6.3. Sintaxe de CHECKSUM TABLE ....................................................................................... 226 4.6.4. Sintaxe de FLUSH ....................................................................................................... 226 4.6.5. Sintaxe de RESET ....................................................................................................... 227 4.6.6. Sintaxe de PURGE MASTER LOGS ................................................................................. 227 4.6.7. Sintaxe de KILL ......................................................................................................... 227 4.6.8. Sintaxe de SHOW ......................................................................................................... 228 4.7. Localização do MySQL e Utilização Internacional ........................................................................... 244 4.7.1. O Conjunto de Caracteres Utilizado para Dados e Ordenação .................................................... 244 4.7.2. Mensagens de Erros em Outras Línguas ............................................................................. 245 4.7.3. Adicionando um Novo Conjunto de Caracteres ..................................................................... 246 4.7.4. Os Vetores de Definições de Caracteres .............................................................................. 247 4.7.5. Suporte à Ordenação de Strings ....................................................................................... 248 4.7.6. Suporte à Caracteres Multi-byte ....................................................................................... 248 4.7.7. Problemas com Conjuntos de Caracteres ............................................................................. 248 4.8. Utilitários e Scripts do Lado do Servidor MySQL ............................................................................ 248 4.8.1. Visão Geral dos Scripts e Utilitários do Lado Servidor ............................................................ 248 4.8.2. mysqld-safe, o wrapper do mysqld ............................................................................. 249 4.8.3. mysqld_multi, programa para gerenciar múltiplos servidores MySQL ..................................... 250 4.8.4. myisampack, O Gerador de Tabelas Compactadas de Somente Leitura do MySQL ........................ 253 4.8.5. mysqld-max, om servidor mysqld extendido ................................................................... 258 4.9. Utilitários e Scripts do Lado do Cliente MySQL .............................................................................. 259 4.9.1. Visão Geral dos Utilitários e Scripts do Lado do Cliente .......................................................... 259 4.9.2. mysql, A Ferramenta de Linha de Comando ....................................................................... 261 4.9.3. mysqlcc, The MySQL Control Center ............................................................................. 268 4.9.4. mysqladmin, Administrando um Servidor MySQL .............................................................. 270 4.9.5. mysqlbinlog, Executando as Consultas a Partir de um Log Binário ......................................... 272 4.9.6. Usando mysqlcheck para Manutenção de Tabelas e Recuperação em Caso de Falhas ..................... 273 4.9.7. mysqldump, Descarregando a Estrutura de Tabelas e Dados .................................................... 275 4.9.8. mysqlhotcopy, Copiando Bancos de Dados e Tabelas do MySQL .......................................... 279 4.9.9. mysqlimport, Importando Dados de Arquivos Texto .......................................................... 280 4.9.10. mysqlshow, Exibindo Bancos de Dados, Tabelas e Colunas .................................................. 282 vi
  • 7. Manual de Referência do MySQL 4.1 4.9.11. mysql_config, Opções para compilação do cliente MySQL ................................................ 283 4.9.12. perror, Explicando Códigos de Erros ............................................................................ 284 4.9.13. Como Executar Comandos SQL a Partir de um Arquivo Texto ................................................. 284 4.10. Os Arquivos de Log do MySQL ............................................................................................... 284 4.10.1. O Log de Erros ......................................................................................................... 285 4.10.2. O Log de Consultas .................................................................................................... 285 4.10.3. O Log de Atualizações ................................................................................................ 285 4.10.4. O Log Binário .......................................................................................................... 286 4.10.5. O Log para Consultas Lentas ......................................................................................... 288 4.10.6. Manutenção do Log de Arquivo ..................................................................................... 288 4.11. Replicação no MySQL .......................................................................................................... 289 4.11.1. Introdução ............................................................................................................... 289 4.11.2. Visão Geral da Implementação da Replicação ..................................................................... 290 4.11.3. Detalhes de Implementação da Replicação ......................................................................... 291 4.11.4. Como Configurar a Replicação ...................................................................................... 294 4.11.5. Recursos de Replicação e Problemas Conhecidos ................................................................. 297 4.11.6. Opções de Inicialização da Replicação ............................................................................. 299 4.11.7. Instruções SQL para Controle do Servidor Master ................................................................ 306 4.11.8. Instruções SQL para Controle do Servidor Slave .................................................................. 307 4.11.9. FAQ da Replicação .................................................................................................... 313 4.11.10. Problemas com Replicação .......................................................................................... 317 4.11.11. Relatando Problemas de Replicação ............................................................................... 318 5. Otimização do MySQL ...................................................................................................................... 320 5.1. Visão Geral da Otimização ....................................................................................................... 320 5.1.1. Limitações do Projeto MySQL/Trocas ............................................................................... 320 5.1.2. Portabilidade ............................................................................................................. 320 5.1.3. Para que Utilizamos o MySQL? ....................................................................................... 321 5.1.4. O Pacote de Benchmark do MySQL .................................................................................. 322 5.1.5. Utilizando seus Próprios Benchmarks ................................................................................ 323 5.2. Otimizando SELECTs e Outras Consultas ..................................................................................... 324 5.2.1. Sintaxe de EXPLAIN (Obter informações sobre uma SELECT) ................................................. 324 5.2.2. Estimando o Desempenho de uma Consulta ......................................................................... 330 5.2.3. Velocidade das Consultas que Utilizam SELECT .................................................................. 330 5.2.4. Como o MySQL Otimiza Cláusulas WHERE ........................................................................ 331 5.2.5. Como o MySQL Otimiza IS NULL ................................................................................. 332 5.2.6. Como o MySQL Otimiza Cláusulas DISTINCT ................................................................... 333 5.2.7. Como o MySQL Otimiza LEFT JOIN e RIGHT JOIN ......................................................... 333 5.2.8. Como o MySQL Otimiza Cláusulas ORDER BY ................................................................... 334 5.2.9. Como o MySQL Otimiza Cláusulas LIMIT ........................................................................ 335 5.2.10. Performance das Consultas que Utilizam INSERT ............................................................... 336 5.2.11. Performance das Consultas que Utilizam UPDATE ............................................................... 337 5.2.12. Performance das Consultas que Utilizam DELETE ............................................................... 337 5.2.13. Mais Dicas sobre Otimizações ....................................................................................... 337 5.3. Detalhes sobre Locks .............................................................................................................. 339 5.3.1. Como o MySQL Trava as Tabelas .................................................................................... 339 5.3.2. Detalhes sobre Lock de Tabelas ....................................................................................... 340 5.4. Otimizando a Estrutura de Banco de Dados .................................................................................... 341 5.4.1. Opções do Projeto ....................................................................................................... 341 5.4.2. Deixando os Dados com o Menor Tamanho Possível .............................................................. 342 5.4.3. Como o MySQL Utiliza Índices ....................................................................................... 342 5.4.4. Índices de Colunas ...................................................................................................... 344 5.4.5. Índices de Múltiplas Colunas .......................................................................................... 344 5.4.6. Como o MySQL Conta as Tabelas Abertas .......................................................................... 345 5.4.7. Como o MySQL Abre e Fecha as Tabelas ........................................................................... 345 5.4.8. Desvantagem em Criar um Número Grande de Tabelas no Mesmo Banco de Dados ......................... 346 5.5. Otimizando o Servidor MySQL ................................................................................................. 346 5.5.1. Sintonia dos Parâmetros em Tempo de Sistema/Compilação e na Inicialização ................................ 347 5.5.2. Parâmetros de Sintonia do Servidor ................................................................................... 347 5.5.3. Como a Compilação e a Ligação Afetam a Velocidade do MySQL ............................................. 349 5.5.4. Como o MySQL Utiliza a Memória .................................................................................. 350 5.5.5. Como o MySQL Utiliza o DNS ....................................................................................... 351 5.5.6. Sintaxe de SET ........................................................................................................... 351 5.6. Detalhes de Disco .................................................................................................................. 355 5.6.1. Utilizando Links Simbólicos ........................................................................................... 356 6. Referência de Linguagem do MySQL .................................................................................................... 359 vii
  • 8. Manual de Referência do MySQL 4.1 6.1. Estrutura da Linguagem ........................................................................................................... 359 6.1.1. Literais: Como Gravar Strings e Numerais .......................................................................... 359 6.1.2. Nomes de Banco de dados, Tabela, Índice, Coluna e Alias ....................................................... 361 6.1.3. Caso Sensitivo nos Nomes ............................................................................................. 363 6.1.4. Variáveis de Usuário .................................................................................................... 363 6.1.5. Variáveis de Sistema .................................................................................................... 364 6.1.6. Sintaxe de Comentários ................................................................................................. 367 6.1.7. Tratamento de Palavras Reservadas no MySQL .................................................................... 367 6.2. Tipos de Campos ................................................................................................................... 370 6.2.1. Tipos Numéricos ......................................................................................................... 374 6.2.2. Tipos de Data e Hora .................................................................................................... 375 6.2.3. Tipos String .............................................................................................................. 381 6.2.4. Escolhendo o Tipo Correto para uma Coluna ....................................................................... 384 6.2.5. Usando Tipos de Colunas de Outros Mecanismos de Banco de Dados .......................................... 385 6.2.6. Exigências de Armazenamento dos Tipos de Coluna .............................................................. 385 6.3. Funções para Uso em Cláusulas SELECT e WHERE .......................................................................... 386 6.3.1. Operadores e Funções de Tipos não Especificados ................................................................. 387 6.3.2. Funções String ........................................................................................................... 393 6.3.3. Funções Numéricas ...................................................................................................... 403 6.3.4. Funções de Data e Hora ................................................................................................ 410 6.3.5. Funções de Conversão .................................................................................................. 423 6.3.6. Outras Funções ........................................................................................................... 425 6.3.7. Funções e Modificadores para Usar com Cláusulas GROUP BY ................................................. 434 6.4. Manipulação de Dados: SELECT, INSERT, UPDATE e DELETE ......................................................... 439 6.4.1. Sintaxe SELECT ......................................................................................................... 439 6.4.2. Sintaxe de Subquery .................................................................................................... 445 6.4.3. Sintaxe INSERT ......................................................................................................... 452 6.4.4. Sintaxe UPDATE ......................................................................................................... 456 6.4.5. Sintaxe DELETE ......................................................................................................... 457 6.4.6. Sintaxe TRUNCATE ..................................................................................................... 458 6.4.7. Sintaxe REPLACE ....................................................................................................... 459 6.4.8. Sintaxe LOAD DATA INFILE ....................................................................................... 459 6.4.9. Sintaxe HANDLER ....................................................................................................... 465 6.4.10. Sintaxe DO .............................................................................................................. 466 6.5. Definição de Dados: CREATE, DROP e ALTER ............................................................................... 466 6.5.1. Sintaxe CREATE DATABASE ......................................................................................... 466 6.5.2. Sintaxe DROP DATABASE ............................................................................................ 466 6.5.3. Sintaxe CREATE TABLE .............................................................................................. 467 6.5.4. Sintaxe ALTER TABLE ................................................................................................ 474 6.5.5. Sintaxe RENAME TABLE .............................................................................................. 477 6.5.6. Sintaxe DROP TABLE .................................................................................................. 477 6.5.7. Sintaxe CREATE INDEX .............................................................................................. 478 6.5.8. Sintaxe DROP INDEX .................................................................................................. 478 6.6. Comandos Utilitários Básicos do Usuário MySQL ........................................................................... 478 6.6.1. Sintaxe USE .............................................................................................................. 478 6.6.2. Sintaxe DESCRIBE (Obtem Informações Sobre Colunas) ........................................................ 479 6.7. Comandos Transacionais e de Lock do MySQL .............................................................................. 479 6.7.1. Sintaxe de START TRANSACTION, COMMIT e ROLLBACK .................................................... 479 6.7.2. Instruções que Não Podem Ser Desfeitas ............................................................................ 480 6.7.3. Instruções que Fazem um Commit Implicito ........................................................................ 480 6.7.4. Sintaxe de SAVEPOINT e ROLLBACK TO SAVEPOINT ....................................................... 480 6.7.5. Sintaxe LOCK TABLES e UNLOCK TABLES ..................................................................... 481 6.7.6. Sintaxe SET TRANSACTION ......................................................................................... 482 6.8. Pesquisa Full-text no MySQL .................................................................................................... 482 6.8.1. Restrições Full-text ...................................................................................................... 485 6.8.2. Ajuste Fino de Pesquisas Full-text no MySQL ...................................................................... 486 6.8.3. TODO de Pesquisas Full-text .......................................................................................... 487 6.9. Cache de Consultas do MySQL .................................................................................................. 487 6.9.1. Como a Cache de Consultas Opera ................................................................................... 487 6.9.2. Configuração da Cache de Consultas ................................................................................. 488 6.9.3. Opções da Cache de Consultas na SELECT ......................................................................... 489 6.9.4. Estado e Manutenção da Cache de Consultas ....................................................................... 489 7. Tipos de Tabela do MySQL ................................................................................................................ 491 7.1. Tabelas MyISAM ................................................................................................................... 491 7.1.1. Espaço Necessário para Chaves ....................................................................................... 493 viii
  • 9. Manual de Referência do MySQL 4.1 7.1.2. Formatos de Tabelas MyISAM ......................................................................................... 494 7.1.3. Problemas com Tabelas MyISAM ..................................................................................... 495 7.2. Tabelas MERGE .................................................................................................................... 497 7.2.1. Problemas com Tabelas MERGE ....................................................................................... 499 7.3. Tabelas ISAM ...................................................................................................................... 499 7.4. Tabelas HEAP ...................................................................................................................... 500 7.5. Tabelas InnoDB ................................................................................................................... 501 7.5.1. Visão Geral de Tabelas InnoDB ....................................................................................... 501 7.5.2. InnoDB no MySQL Versão 3.23 ...................................................................................... 501 7.5.3. Opções de Inicialização do InnoDB .................................................................................. 502 7.5.4. Criando Tablespaces no InnoDB ...................................................................................... 506 7.5.5. Criando Tabelas InnoDB ............................................................................................... 507 7.5.6. Adicionando e Removendo Arquivos de Dados e Log do InnoDB ............................................... 511 7.5.7. Fazendo Backup e Recuperando um Banco de Dados InnoDB ................................................... 511 7.5.8. Movendo um Banco de Dados InnoDB para Outra Máquina ..................................................... 513 7.5.9. Modelo Transacional do InnoDB ...................................................................................... 513 7.5.10. Dicas de Ajuste de Desempenho ..................................................................................... 518 7.5.11. Implementação de Multi-versioning ................................................................................. 520 7.5.12. Estrutura de Tabelas e Índices ........................................................................................ 521 7.5.13. Gerenciamento do Espaço de Arquivos e E/S de Disco .......................................................... 522 7.5.14. Tratando Erros .......................................................................................................... 524 7.5.15. Restrições em Tabelas InnoDB ...................................................................................... 524 7.5.16. Histórico de Alterações do InnoDB ................................................................................. 525 7.5.17. Informações de Contato do InnoDB ................................................................................ 539 7.6. Tabelas BDB ou BerkeleyDB .................................................................................................. 539 7.6.1. Visão Geral de Tabelas BDB ........................................................................................... 539 7.6.2. Instalando BDB ........................................................................................................... 539 7.6.3. Opções de Inicialização do BDB ....................................................................................... 540 7.6.4. Características de Tabelas BDB: ....................................................................................... 540 7.6.5. Itens a serem corrigidos no BDB num futuro próximo: ............................................................. 541 7.6.6. Sistemas operacionais suportados pelo BDB ......................................................................... 542 7.6.7. Restrições em Tabelas BDB ............................................................................................ 542 7.6.8. Erros Que Podem Ocorrer Usando Tabelas BDB .................................................................... 542 8. Introdução ao MaxDB ....................................................................................................................... 544 8.1. Historia do MaxDB ................................................................................................................ 544 8.2. Licenciamento e Suporte .......................................................................................................... 544 8.3. Conceitos Básicos do MaxDB ................................................................................................... 544 8.4. Diferenças de Recursos entre o MaxDB e o MySQL ......................................................................... 544 8.5. Interoperability Features between MaxDB and MySQL ..................................................................... 545 8.6. Links Relacionados ao MaxDB .................................................................................................. 545 8.7. Palavras Reservadas no MaxDB ................................................................................................. 545 9. Conjunto de Caracteres Nacionais e Unicode ............................................................................................ 548 9.1. Conjuntos de Caracteres e Collations em Geral ............................................................................... 548 9.2. Conjunto de Caracteres e Collations no MySQL .............................................................................. 548 9.3. Determinando o Conjunto de Caracteres e Collation Padrões ............................................................... 549 9.3.1. Conjunto de Caracteres e Collations do Servidor ................................................................... 549 9.3.2. Conjunto de Caracteres e Collation de Banco de Dados ........................................................... 550 9.3.3. O Conjunto de Caracteres e Collations de Tabela ................................................................... 550 9.3.4. Conjunto de Caracteres e Collation de Colunas ..................................................................... 551 9.3.5. Exemplos de Atribuições de Conjuntos de Caracteres e Collation ............................................... 551 9.3.6. Conjunto de Caracteres e Collation de Conexão .................................................................... 552 9.3.7. Conjunto de Caracteres e Collation de Caracter de String Literal ................................................ 552 9.3.8. Cláusula COLLATE em Várias Partes de uma Consulta SQL ..................................................... 553 9.3.9. Precedência da Cláusula COLLATE ................................................................................... 554 9.3.10. Operador BINARY ..................................................................................................... 554 9.3.11. Alguns Casos Especiais Onde a Determinação da Collation e Trabalhosa ..................................... 554 9.3.12. Collations Devem Ser para o Conjunto de Caracteres Certo ..................................................... 555 9.3.13. Um exemplo do Efeito da Collation ................................................................................. 555 9.4. Operações Afetadas pelo Suporte a Conjunto de Caracteres ................................................................ 556 9.4.1. Strings de Resultados ................................................................................................... 556 9.4.2. CONVERT() ............................................................................................................. 556 9.4.3. CAST() .................................................................................................................. 557 9.4.4. SHOW CHARACTER SET ............................................................................................. 557 9.4.5. SHOW COLLATION .................................................................................................... 557 9.4.6. SHOW CREATE DATABASE ......................................................................................... 557 ix
  • 10. Manual de Referência do MySQL 4.1 9.4.7. SHOW FULL COLUMNS ............................................................................................... 558 9.5. Suporte Unicode ................................................................................................................... 558 9.6. UTF8 para Metdados .............................................................................................................. 558 9.7. Compatibilidade com Outros SGBDs ........................................................................................... 559 9.8. Novo Formato do Arquivo de Configuração do Conjunto de Caracteres .................................................. 559 9.9. Conjunto de Caracteres Nacional ................................................................................................ 559 9.10. Atualizando para o MySQL 4.0 ................................................................................................ 560 9.10.1. Conjunto de Caracteres do MySQL e o Par/Conjunto de Caracter/Collation Correspondente do MySQL 4.1 ...................................................................................................................................... 560 9.11. Os conjuntos de Caracteres e Collations que o MySQL Suporta .......................................................... 561 9.11.1. O Conjunto de Caracteres Unicode .................................................................................. 562 9.11.2. Conjunto de Caracteres para Plataformas Específicas ............................................................ 562 9.11.3. Conjunto de Caracteres do Sul da Europa e Oriente Médio ...................................................... 562 9.11.4. Os Conjuntos de Caracteres Asiáticos .............................................................................. 562 9.11.5. Os Conjuntos de Caracteres Bálticos ................................................................................ 562 9.11.6. Os Conjuntos de Caracteres Cirílicos ............................................................................... 563 9.11.7. O Conjunto de Caracteres da Europa Central ...................................................................... 563 9.11.8. Os Conjuntos de Caracteres da Europa Ocidental ................................................................. 564 10. Extensões Espacias em MySQL .......................................................................................................... 566 10.1. Introdução ......................................................................................................................... 566 10.2. O Modelo Geomátrico OpenGIS ............................................................................................... 566 10.2.1. A Hierarquia da Classe Geometry ................................................................................. 567 10.2.2. Classe Geometry ..................................................................................................... 568 10.2.3. Classe Point .......................................................................................................... 568 10.2.4. Classe Curve .......................................................................................................... 569 10.2.5. Classe LineString ................................................................................................. 569 10.2.6. Classe Surface ....................................................................................................... 569 10.2.7. Classe Polygon ....................................................................................................... 570 10.2.8. Classe GeometryCollection ................................................................................... 570 10.2.9. Classe MultiPoint ................................................................................................. 570 10.2.10. Classe MultiCurve ................................................................................................ 571 10.2.11. Classe MultiLineString (Multi Linhas) .................................................................... 571 10.2.12. Classe MultiSurface (Multi Superfícies) .................................................................... 571 10.2.13. Classe MultiPolygon (Multi Polígonos) ...................................................................... 571 10.3. Formatos de Dados Espaciais Suportados .................................................................................... 572 10.3.1. Formato Well-Known Text (WKT) ................................................................................. 572 10.3.2. Formato Well-Known Binary (WKB) ............................................................................... 573 10.4. Criando um Banco de Dados MySQL Habilitado Espacialmente ......................................................... 573 10.4.1. Tipos de Dados Espaciais do MySQL ............................................................................... 573 10.4.2. Criando Valores Espaciais ............................................................................................ 574 10.4.3. Criando Colunas Espaciais ........................................................................................... 577 10.4.4. Entrando com Dados em Colunas Espaciais ....................................................................... 577 10.4.5. Buscando Dados Espaciais ........................................................................................... 578 10.5. Analisando Informação Espacial ............................................................................................... 579 10.5.1. Funções Para Converter Geometrias Entre Formatos Diferentes ................................................ 579 10.5.2. Funções de Análise das Propriedades de Geometry ............................................................ 580 10.5.3. Funções Que Criam Novas Geometrias de Outras Existentes ................................................... 585 10.5.4. Funções Para Testar Relações Espaciais Entre Objetos Geométricos .......................................... 586 10.5.5. Relações de Retângulo de Limite Mínimo (Minimal Bounding Rectangles - MBR) em Geometrias ...... 586 10.5.6. Funções que Testam Relacionamentos Espaciais Entre Geometrias ............................................ 587 10.6. Otimizando Análises Espaciais ................................................................................................. 588 10.6.1. Criando Índices Espaciais ............................................................................................. 588 10.6.2. Usando Índice Espacial ............................................................................................... 589 10.7. Compatibilidade e Conformidade com o MySQL ........................................................................... 590 10.7.1. Recursos GIS Que Ainda Não Estão Implementados ............................................................. 590 11. Stored Procedures e Funções .............................................................................................................. 592 11.1. Sintaxe de Stored Procedure .................................................................................................... 592 11.1.1. Manutenção de Stored Procedures ................................................................................... 592 11.1.2. SHOW PROCEDURE STATUS e SHOW FUNCTION STATUS ............................................... 594 11.1.3. CALL ..................................................................................................................... 594 11.1.4. BEGIN ... END Compound Statement .......................................................................... 595 11.1.5. Instrução DECLARE ................................................................................................... 595 11.1.6. Variables in Stored Procedures ....................................................................................... 595 11.1.7. Condições e Handlers ................................................................................................. 595 11.1.8. Cursors .................................................................................................................. 597 x
  • 11. Manual de Referência do MySQL 4.1 11.1.9. Flow Control Constructs .............................................................................................. 597 12. Ferramentas de Clientes e APIs do MySQL ............................................................................................ 600 12.1. API C do MySQL ................................................................................................................ 600 12.1.1. Tipos de Dados da API C ............................................................................................. 600 12.1.2. Visão Geral das Função da API C ................................................................................... 603 12.1.3. Descrição das Funções da API C .................................................................................... 605 12.1.4. Instruções Preparadas da API C ...................................................................................... 638 12.1.5. Tipos de Dados de Instruções Preparadas da API C .............................................................. 639 12.1.6. Visão Geral das Funções de Instruções Preparadas da API C ................................................... 641 12.1.7. Descrição das Funções de Instrução Preparada da API C ........................................................ 643 12.1.8. Tratando a Execução de Múltiplas Consultas na API C .......................................................... 657 12.1.9. Manipulando Valores de Data e Hora na API C ................................................................... 658 12.1.10. Descrição das Funções de Threads da API C ..................................................................... 659 12.1.11. Descrição das Funções do Servidor Embutido da API C ....................................................... 660 12.1.12. Dúvidas e problemas comuns ao utilzar a API C ................................................................ 661 12.1.13. Construindo Programas Clientes ................................................................................... 662 12.1.14. Como Fazer um Cliente em Threads ............................................................................... 662 12.1.15. libmysqld, a Biblioteca do Servidor Embutido MySQL ........................................................ 663 12.2. Suporte ODBC ao MySQL ..................................................................................................... 667 12.2.1. Como Instalar o MyODBC ........................................................................................... 667 12.2.2. Como Preencher os Vários Campos no Programa de Administração do ODBC .............................. 668 12.2.3. Parâmetros de Conexão do MyODBC .............................................................................. 668 12.2.4. Como Relatar Problemas com o MyODBC ........................................................................ 669 12.2.5. Programas que Funcionam com MyODBC ........................................................................ 670 12.2.6. Como Obter o Valor de uma Coluna AUTO_INCREMENT no ODBC ......................................... 674 12.2.7. Relatando Problemas com MyODBC ............................................................................... 674 12.3. Conectividade Java (JDBC) ao MySQL ...................................................................................... 675 12.4. API PHP do MySQL ............................................................................................................. 675 12.4.1. Problemas Comuns com MySQL e PHP ........................................................................... 675 12.5. API Perl do MySQL ............................................................................................................. 675 12.5.1. DBI com DBD::mysql .............................................................................................. 675 12.5.2. A interface DBI ........................................................................................................ 676 12.5.3. Mais Informações DBI/DBD .......................................................................................... 682 12.6. API C++ do MySQL ............................................................................................................. 682 12.6.1. Borland C++ ............................................................................................................ 682 12.7. API Python do MySQL .......................................................................................................... 682 12.8. API Tcl do MySQL .............................................................................................................. 682 12.9. Eiffel Wrapper do MySQL ...................................................................................................... 682 13. Tratamento de Erros no MySQL ......................................................................................................... 684 13.1. Erros Retornados ................................................................................................................. 684 14. Estendendo o MySQL ..................................................................................................................... 707 14.1. MySQL Internals ................................................................................................................. 707 14.1.1. Threads MySQL ........................................................................................................ 707 14.1.2. Pacotes de Teste do MySQL ......................................................................................... 707 14.2. Adicionando Novas Funções ao MySQL ..................................................................................... 709 14.2.1. Sintaxe CREATE FUNCTION/DROP FUNCTION .............................................................. 710 14.2.2. Adicionando Novas Funções Definidas Por Usuário .............................................................. 710 14.2.3. Adicionando uma Nova Função Nativa ............................................................................. 716 14.3. Adicionado Novos Procedimentos ao MySQL ............................................................................... 717 14.3.1. Análise de Procedimento .............................................................................................. 717 14.3.2. Escrevendo um Procedimento ........................................................................................ 718 A. Problemas e Erros Comuns ................................................................................................................ 719 A.1. Como Determinar o Que Está Causando Problemas ......................................................................... 719 A.2. Erros Comuns Usando o MySQL ............................................................................................... 720 A.2.1. Erro: Access Denied .............................................................................................. 720 A.2.2. Erro: MySQL server has gone away ....................................................................... 720 A.2.3. Erro: Can't connect to [local] MySQL server ................................................... 721 A.2.4. Erro: Client does not support authentication protocol ................................. 722 A.2.5. Erro: Host '...' is blocked ................................................................................ 722 A.2.6. Erro: Too many connections .................................................................................. 723 A.2.7. Erro: Some non-transactional changed tables couldn't be rolled back ........ 723 A.2.8. Erro: Out of memory .............................................................................................. 723 A.2.9. Erro: Packet too large ......................................................................................... 724 A.2.10. Erros de Comunicação / Comunicação Abortada ................................................................. 724 A.2.11. Erro: The table is full ...................................................................................... 725 xi
  • 12. Manual de Referência do MySQL 4.1 A.2.12. Erro: Can't create/write to file ..................................................................... 725 A.2.13. Erro no Cliente: Commands out of sync ................................................................... 726 A.2.14. Erro: Ignoring user ............................................................................................. 726 A.2.15. Erro: Table 'xxx' doesn't exist ....................................................................... 726 A.2.16. Erro: Can't initialize character set xxx ....................................................... 727 A.2.17. Arquivo Não Encontrado ............................................................................................. 727 A.3. Assuntos Relacionados a Instalação ............................................................................................ 728 A.3.1. Problemas de Ligação com a Biblioteca do Cliente MySQL ..................................................... 728 A.3.2. Como Executar o MySQL Como Um Usuário Normal ............................................................ 728 A.3.3. Problemas com Permissões de Arquivos ............................................................................ 729 A.4. Assuntos Relacionados a Administração ...................................................................................... 729 A.4.1. O Que Fazer Se o MySQL Continua Falhando ..................................................................... 729 A.4.2. Como Recuperar uma Senha de Root Esquecida ................................................................... 731 A.4.3. Como o MySQL Trata de Discos Sem Espaço ..................................................................... 732 A.4.4. Onde o MySQL Armazena Arquivos Temporários ................................................................ 732 A.4.5. Como Proteger ou AlterarHow to Protect or Change the MySQL Socket File /tmp/mysql.sock ..... 733 A.4.6. Problemas Com Fuso Horário ......................................................................................... 734 A.5. Assuntos Relacionados a Consultas ............................................................................................ 734 A.5.1. Caso-Sensitivito em Pesquisas ........................................................................................ 734 A.5.2. Problemas Usando Colunas DATE ................................................................................... 734 A.5.3. Problemas com Valores NULL ........................................................................................ 735 A.5.4. Problemas com alias ................................................................................................ 736 A.5.5. Deletando Linhas de Tabelas Relacionadas ......................................................................... 736 A.5.6. Resolvendo Problemas Com Registros Não Encontrados ......................................................... 736 A.5.7. Problemas com Comparação de Ponto Flutuante ................................................................... 737 A.6. Assuntos Relacionados ao Otimizador ......................................................................................... 738 A.6.1. Camo evitar o varredura da tabela,,, .................................................................................. 739 A.7. Assuntos Relacionados a Definições de Tabelas ............................................................................. 739 A.7.1. Problemas com ALTER TABLE. ..................................................................................... 739 A.7.2. Como Alterar a Ordem das Colunas em Uma Tabela .............................................................. 740 A.7.3. Problemas com TEMPORARY TABLE ............................................................................ 740 B. Contribuição de Programas ................................................................................................................ 741 B.1. APIs ................................................................................................................................. 741 B.2. Conversores ........................................................................................................................ 743 B.3. Utilitários ........................................................................................................................... 743 C. Colaboradores do MySQL ................................................................................................................. 745 C.1. Desenvolvedores do MySQL .................................................................................................... 745 C.2. Coolaboradores do MySQL ...................................................................................................... 748 C.3. Responsáveis pela Documentação e Tradução ................................................................................ 752 C.4. Bibliotecas usadas e incluidas com o MySQL ................................................................................ 754 C.5. Pacotes que suportam o MySQL ................................................................................................ 754 C.6. Ferramentas que são usadas para criar o MySQL ............................................................................. 755 C.7. Responsáveis pelo Suporte do MySQL ........................................................................................ 755 D. Histórico de Alterações do MySQL ...................................................................................................... 757 D.1. Alterações na distribuição 5.0.0 (Development) .............................................................................. 757 D.2. Alterações na distribuição 4.1.x (Alpha) ....................................................................................... 757 D.2.1. Alterações na distribuição 4.1.2 (not released yet) ................................................................. 758 D.2.2. Alterações na distribuição 4.1.1 (01 de Dez de 2003) ............................................................. 759 D.2.3. Alterações na distribuição 4.1.0 (03 Apr 2003: Alpha) ............................................................ 762 D.3. Alterações na distribuição 4.0.x (Production) ................................................................................. 764 D.3.1. Alterações na distribuição 4.0.17 (not released yet) ............................................................... 764 D.3.2. Alterações na distribuição 4.0.16 (17 Out 2003) ................................................................... 766 D.3.3. Alterações na distribuição 4.0.15 (03 Sep 2003) ................................................................... 767 D.3.4. Alterações na distribuição 4.0.14 (18 Jul 2003) .................................................................... 771 D.3.5. Alterações na distribuição 4.0.13 (16 May 2003) .................................................................. 773 D.3.6. Alterações na distribuição 4.0.12 (15 Mar 2003: Production) .................................................... 776 D.3.7. Alterações na distribuição 4.0.11 (20 Feb 2003) ................................................................... 778 D.3.8. Alterações na distribuição 4.0.10 (29 Jan 2003) .................................................................... 778 D.3.9. Alterações na distribuição 4.0.9 (09 Jan 2003) ..................................................................... 780 D.3.10. Alterações na distribuição 4.0.8 (07 Jan 2003) .................................................................... 780 D.3.11. Alterações na distribuição 4.0.7 (20 Dec 2002) ................................................................... 781 D.3.12. Alterações na distribuição 4.0.6 (14 Dec 2002: Gamma) ........................................................ 781 D.3.13. Alterações na distribuição 4.0.5 (13 Nov 2002) ................................................................... 782 D.3.14. Alterações na distribuição 4.0.4 (29 Sep 2002) ................................................................... 784 D.3.15. Alterações na distribuição 4.0.3 (26 Aug 2002: Beta) ............................................................ 785 xii
  • 13. Manual de Referência do MySQL 4.1 D.3.16. Alterações na distribuição 4.0.2 (01 Jul 2002) .................................................................... 787 D.3.17. Alterações na distribuição 4.0.1 (23 Dec 2001) ................................................................... 790 D.3.18. Alterações na distribuição 4.0.0 (Oct 2001: Alpha) .............................................................. 791 D.4. Alterações na distribuição 3.23.x (Recent; still supported) .................................................................. 793 D.4.1. Alterações na distribuição 3.23.59 (not released yet) .............................................................. 793 D.4.2. Alterações na distribuição 3.23.58 (11 Sep 2003) .................................................................. 794 D.4.3. Alterações na distribuição 3.23.57 (06 Jun 2003) .................................................................. 794 D.4.4. Alterações na distribuição 3.23.56 (13 Mar 2003) ................................................................. 795 D.4.5. Alterações na distribuição 3.23.55 (23 Jan 2003) .................................................................. 796 D.4.6. Alterações na distribuição 3.23.54 (05 Dec 2002) ................................................................. 796 D.4.7. Alterações na distribuição 3.23.53 (09 Oct 2002) .................................................................. 797 D.4.8. Alterações na distribuição 3.23.52 (14 Aug 2002) ................................................................. 798 D.4.9. Alterações na distribuição 3.23.51 (31 May 2002) ................................................................. 798 D.4.10. Alterações na distribuição 3.23.50 (21 Apr 2002) ................................................................ 799 D.4.11. Alterações na distribuição 3.23.49 .................................................................................. 800 D.4.12. Alterações na distribuição 3.23.48 (07 Feb 2002) ................................................................ 800 D.4.13. Alterações na distribuição 3.23.47 (27 Dec 2001) ................................................................ 801 D.4.14. Alterações na distribuição 3.23.46 (29 Nov 2001) ................................................................ 801 D.4.15. Alterações na distribuição 3.23.45 (22 Nov 2001) ................................................................ 802 D.4.16. Alterações na distribuição 3.23.44 (31 Oct 2001) ................................................................ 802 D.4.17. Alterações na distribuição 3.23.43 (04 Oct 2001) ................................................................ 803 D.4.18. Alterações na distribuição 3.23.42 (08 Sep 2001) ................................................................ 803 D.4.19. Alterações na distribuição 3.23.41 (11 Aug 2001) ................................................................ 804 D.4.20. Alterações na distribuição 3.23.40 .................................................................................. 805 D.4.21. Alterações na distribuição 3.23.39 (12 Jun 2001) ................................................................. 805 D.4.22. Alterações na distribuição 3.23.38 (09 May 2001) ............................................................... 806 D.4.23. Alterações na distribuição 3.23.37 (17 Apr 2001) ................................................................ 806 D.4.24. Alterações na distribuição 3.23.36 (27 Mar 2001) ................................................................ 807 D.4.25. Alterações na distribuição 3.23.35 (15 Mar 2001) ................................................................ 808 D.4.26. Alterações na distribuição 3.23.34a ................................................................................. 808 D.4.27. Alterações na distribuição 3.23.34 (10 Mar 2001) ................................................................ 808 D.4.28. Alterações na distribuição 3.23.33 (09 Feb 2001) ................................................................ 809 D.4.29. Alterações na distribuição 3.23.32 (22 Jan 2001: Production) .................................................. 810 D.4.30. Alterações na distribuição 3.23.31 (17 Jan 2001) ................................................................. 810 D.4.31. Alterações na distribuição 3.23.30 (04 Jan 2001) ................................................................. 811 D.4.32. Alterações na distribuição 3.23.29 (16 Dec 2000) ................................................................ 812 D.4.33. Alterações na distribuição 3.23.28 (22 Nov 2000: Gamma) ..................................................... 813 D.4.34. Alterações na distribuição 3.23.27 (24 Oct 2000) ................................................................ 815 D.4.35. Alterações na distribuição 3.23.26 (18 Oct 2000) ................................................................ 815 D.4.36. Alterações na distribuição 3.23.25 (29 Sep 2000) ................................................................ 816 D.4.37. Alterações na distribuição 3.23.24 (08 Sep 2000) ................................................................ 817 D.4.38. Alterações na distribuição 3.23.23 (01 Sep 2000) ................................................................ 817 D.4.39. Alterações na distribuição 3.23.22 (31 Jul 2000) ................................................................. 819 D.4.40. Alterações na distribuição 3.23.21 .................................................................................. 819 D.4.41. Alterações na distribuição 3.23.20 .................................................................................. 820 D.4.42. Alterações na distribuição 3.23.19 .................................................................................. 820 D.4.43. Alterações na distribuição 3.23.18 .................................................................................. 820 D.4.44. Alterações na distribuição 3.23.17 .................................................................................. 820 D.4.45. Alterações na distribuição 3.23.16 .................................................................................. 821 D.4.46. Alterações na distribuição 3.23.15 (May 2000: Beta) ............................................................ 822 D.4.47. Alterações na distribuição 3.23.14 .................................................................................. 822 D.4.48. Alterações na distribuição 3.23.13 .................................................................................. 823 D.4.49. Alterações na distribuição 3.23.12 (07 Mar 2000) ................................................................ 823 D.4.50. Alterações na distribuição 3.23.11 .................................................................................. 824 D.4.51. Alterações na distribuição 3.23.10 .................................................................................. 824 D.4.52. Alterações na distribuição 3.23.9 .................................................................................... 825 D.4.53. Alterações na distribuição 3.23.8 (02 Jan 2000) .................................................................. 825 D.4.54. Alterações na distribuição 3.23.7 (10 Dec 1999) ................................................................. 826 D.4.55. Alterações na distribuição 3.23.6 .................................................................................... 826 D.4.56. Alterações na distribuição 3.23.5 (20 Oct 1999) .................................................................. 827 D.4.57. Alterações na distribuição 3.23.4 (28 Sep 1999) .................................................................. 828 D.4.58. Alterações na distribuição 3.23.3 .................................................................................... 828 D.4.59. Alterações na distribuição 3.23.2 (09 Aug 1999) ................................................................. 829 D.4.60. Alterações na distribuição 3.23.1 .................................................................................... 830 D.4.61. Alterações na distribuição 3.23.0 (05 Aug 1999: Alpha) ........................................................ 830 xiii
  • 14. Manual de Referência do MySQL 4.1 D.5. Alterações na distribuição 3.22.x (Old; discontinued) ....................................................................... 832 D.5.1. Alterações na distribuição 3.22.35 .................................................................................... 832 D.5.2. Alterações na distribuição 3.22.34 .................................................................................... 832 D.5.3. Alterações na distribuição 3.22.33 .................................................................................... 832 D.5.4. Alterações na distribuição 3.22.32 (14 Feb 2000) .................................................................. 832 D.5.5. Alterações na distribuição 3.22.31 .................................................................................... 832 D.5.6. Alterações na distribuição 3.22.30 .................................................................................... 833 D.5.7. Alterações na distribuição 3.22.29 (02 Jan 2000) .................................................................. 833 D.5.8. Alterações na distribuição 3.22.28 (20 Oct 1999) .................................................................. 833 D.5.9. Alterações na distribuição 3.22.27 .................................................................................... 833 D.5.10. Alterações na distribuição 3.22.26 (16 Sep 1999) ................................................................ 833 D.5.11. Alterações na distribuição 3.22.25 .................................................................................. 834 D.5.12. Alterações na distribuição 3.22.24 (05 Jul 1999) ................................................................. 834 D.5.13. Alterações na distribuição 3.22.23 (08 Jun 1999) ................................................................. 834 D.5.14. Alterações na distribuição 3.22.22 (30 Apr 1999) ................................................................ 834 D.5.15. Alterações na distribuição 3.22.21 .................................................................................. 835 D.5.16. Alterações na distribuição 3.22.20 (18 Mar 1999) ................................................................ 835 D.5.17. Alterações na distribuição 3.22.19 (Mar 1999: Production) ..................................................... 835 D.5.18. Alterações na distribuição 3.22.18 .................................................................................. 835 D.5.19. Alterações na distribuição 3.22.17 .................................................................................. 836 D.5.20. Alterações na distribuição 3.22.16 (Feb 1999: Gamma) ......................................................... 836 D.5.21. Alterações na distribuição 3.22.15 .................................................................................. 836 D.5.22. Alterações na distribuição 3.22.14 .................................................................................. 836 D.5.23. Alterações na distribuição 3.22.13 .................................................................................. 837 D.5.24. Alterações na distribuição 3.22.12 .................................................................................. 837 D.5.25. Alterações na distribuição 3.22.11 .................................................................................. 837 D.5.26. Alterações na distribuição 3.22.10 .................................................................................. 838 D.5.27. Alterações na distribuição 3.22.9 .................................................................................... 839 D.5.28. Alterações na distribuição 3.22.8 .................................................................................... 839 D.5.29. Alterações na distribuição 3.22.7 (Sep 1998: Beta) .............................................................. 839 D.5.30. Alterações na distribuição 3.22.6 .................................................................................... 840 D.5.31. Alterações na distribuição 3.22.5 .................................................................................... 840 D.5.32. Alterações na distribuição 3.22.4 .................................................................................... 841 D.5.33. Alterações na distribuição 3.22.3 .................................................................................... 842 D.5.34. Alterações na distribuição 3.22.2 .................................................................................... 842 D.5.35. Alterações na distribuição 3.22.1 (Jun 1998: Alpha) ............................................................. 843 D.5.36. Alterações na distribuição 3.22.0 .................................................................................... 843 D.6. Alterações na distribuição 3.21.x ............................................................................................... 844 D.6.1. Alterações na distribuição 3.21.33 .................................................................................... 844 D.6.2. Alterações na distribuição 3.21.32 .................................................................................... 845 D.6.3. Alterações na distribuição 3.21.31 .................................................................................... 845 D.6.4. Alterações na distribuição 3.21.30 .................................................................................... 845 D.6.5. Alterações na distribuição 3.21.29 .................................................................................... 846 D.6.6. Alterações na distribuição 3.21.28 .................................................................................... 846 D.6.7. Alterações na distribuição 3.21.27 .................................................................................... 846 D.6.8. Alterações na distribuição 3.21.26 .................................................................................... 847 D.6.9. Alterações na distribuição 3.21.25 .................................................................................... 847 D.6.10. Alterações na distribuição 3.21.24 .................................................................................. 847 D.6.11. Alterações na distribuição 3.21.23 .................................................................................. 847 D.6.12. Alterações na distribuição 3.21.22 .................................................................................. 848 D.6.13. Alterações na distribuição 3.21.21a ................................................................................. 849 D.6.14. Alterações na distribuição 3.21.21 .................................................................................. 849 D.6.15. Alterações na distribuição 3.21.20 .................................................................................. 849 D.6.16. Alterações na distribuição 3.21.19 .................................................................................. 849 D.6.17. Alterações na distribuição 3.21.18 .................................................................................. 849 D.6.18. Alterações na distribuição 3.21.17 .................................................................................. 850 D.6.19. Alterações na distribuição 3.21.16 .................................................................................. 850 D.6.20. Alterações na distribuição 3.21.15 .................................................................................. 850 D.6.21. Alterações na distribuição 3.21.14b ................................................................................. 851 D.6.22. Alterações na distribuição 3.21.14a ................................................................................. 851 D.6.23. Alterações na distribuição 3.21.13 .................................................................................. 852 D.6.24. Alterações na distribuição 3.21.12 .................................................................................. 852 D.6.25. Alterações na distribuição 3.21.11 .................................................................................. 853 D.6.26. Alterações na distribuição 3.21.10 .................................................................................. 853 D.6.27. Alterações na distribuição 3.21.9 .................................................................................... 853 xiv
  • 15. Manual de Referência do MySQL 4.1 D.6.28. Alterações na distribuição 3.21.8 .................................................................................... 854 D.6.29. Alterações na distribuição 3.21.7 .................................................................................... 854 D.6.30. Alterações na distribuição 3.21.6 .................................................................................... 854 D.6.31. Alterações na distribuição 3.21.5 .................................................................................... 855 D.6.32. Alterações na distribuição 3.21.4 .................................................................................... 855 D.6.33. Alterações na distribuição 3.21.3 .................................................................................... 855 D.6.34. Alterações na distribuição 3.21.2 .................................................................................... 856 D.6.35. Alterações na distribuição 3.21.0 .................................................................................... 856 D.7. Alterações na distribuição 3.20.x ............................................................................................... 857 D.7.1. Alterações na distribuição 3.20.18 .................................................................................... 857 D.7.2. Alterações na distribuição 3.20.17 .................................................................................... 858 D.7.3. Alterações na distribuição 3.20.16 .................................................................................... 859 D.7.4. Alterações na distribuição 3.20.15 .................................................................................... 859 D.7.5. Alterações na distribuição 3.20.14 .................................................................................... 859 D.7.6. Alterações na distribuição 3.20.13 .................................................................................... 860 D.7.7. Alterações na distribuição 3.20.11 .................................................................................... 860 D.7.8. Alterações na distribuição 3.20.10 .................................................................................... 860 D.7.9. Alterações na distribuição 3.20.9 ..................................................................................... 861 D.7.10. Alterações na distribuição 3.20.8 .................................................................................... 861 D.7.11. Alterações na distribuição 3.20.7 .................................................................................... 861 D.7.12. Alterações na distribuição 3.20.6 .................................................................................... 862 D.7.13. Alterações na distribuição 3.20.3 .................................................................................... 863 D.7.14. Alterações na distribuição 3.20.0 .................................................................................... 863 D.8. Alterações na distribuição 3.19.x ............................................................................................... 864 D.8.1. Alterações na distribuição 3.19.5 ..................................................................................... 864 D.8.2. Alterações na distribuição 3.19.4 ..................................................................................... 864 D.8.3. Alterações na distribuição 3.19.3 ..................................................................................... 864 E. Portando para Outros Sistemas ............................................................................................................ 865 E.1. Depurando um Servidor MySQL ................................................................................................ 865 E.1.1. Compilando o MYSQL para Depuração ............................................................................. 866 E.1.2. Criando Arquivos Trace (Rastreamento) ............................................................................. 866 E.1.3. Depurando o mysqld no gdb ........................................................................................... 867 E.1.4. Usando Stack Trace ..................................................................................................... 868 E.1.5. Usando Arquivos de Log para Encontrar a Causa dos Erros no mysqld ......................................... 869 E.1.6. Fazendo um Caso de Teste Se Ocorre um Corrompimento de Tabela ........................................... 869 E.2. Depurando um cliente MySQL. ................................................................................................. 870 E.3. O Pacote DBUG ................................................................................................................... 870 E.4. Métodos de Lock .................................................................................................................. 871 E.5. Comentários Sobre Threads RTS ............................................................................................... 872 E.6. Diferença en Entre Alguns Pacotes de Threads ............................................................................... 873 F. Variáveis de Ambientes do MySQL ...................................................................................................... 875 G. Sintaxe de Expressões Regulares do MySQL ........................................................................................... 876 H. GPL - Licença Pública Geral do GNU ................................................................................................... 879 Índice Remissivo ................................................................................................................................ 883 xv
  • 16. 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 indicadas. Também há referência a versão 5.0 (desenvolvimento). xvi