mysql reference manual - · pdf fileiii 1.8.6.1 erros da vers˜ao 3.23 corrigidos em...

1147
MySQL Reference Manual Copyright c 1997-2003 MySQL AB

Upload: lydat

Post on 14-Mar-2018

283 views

Category:

Documents


11 download

TRANSCRIPT

  • MySQL Reference Manual

    Copyright c 1997-2003 MySQL AB

  • i

    Sumario

    1 Informacoes Gerais . . . . . . . . . . . . . . . . . . . . . . . . 11.1 Sobre Este Manual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

    1.1.1 Convencoes Usadas Neste Manual . . . . . . . . . . . . . . . . 21.2 Visao Geral do Sistema de Gerenciamento de Banco de Dados

    MySQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31.2.1 Historia do MySQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51.2.2 As Principais Caracteristicas do MySQL . . . . . . . . . . 51.2.3 Estabilidade do MySQL . . . . . . . . . . . . . . . . . . . . . . . . . 81.2.4 Qual o Tamanho Que as Tabelas do MySQL Podem

    Ter? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91.2.5 Compatibilidade Com o Ano 2000 (Y2K) . . . . . . . . 11

    1.3 Visao Geral da MySQL AB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121.3.1 O Modelo de Negocio e Servicos da MySQL AB . . 13

    1.3.1.1 Suporte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131.3.1.2 Treinamento e Certificacao . . . . . . . . . . . . . 131.3.1.3 Consultoria . . . . . . . . . . . . . . . . . . . . . . . . . . . 141.3.1.4 Licencas Comerciais . . . . . . . . . . . . . . . . . . . 141.3.1.5 Parcerias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

    1.3.2 Informacoes para Contato . . . . . . . . . . . . . . . . . . . . . . 151.4 Suporte e Licenciamento do MySQL . . . . . . . . . . . . . . . . . . . . . 16

    1.4.1 Suporte Oferecido pela MySQL AB . . . . . . . . . . . . . 161.4.2 Copyrights e Licencas Usadas pelo MySQL . . . . . . 171.4.3 Licencas do MySQL . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

    1.4.3.1 Usando o Programa MySQL Sob umaLicenca Comercial . . . . . . . . . . . . . . . . . . . . . . . . 18

    1.4.3.2 Usando o Programa MySQL Sem CustoSob GPL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

    1.4.4 Logomarcas e Marcas Registradas da MySQL AB. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

    1.4.4.1 O Logo Original do MySQL . . . . . . . . . . . . 201.4.4.2 Logomarcas da MySQL que Podem Ser

    Usadas Sem Permissao de Alteracao . . . . . . . . 201.4.4.3 Quando Voce Precisa de Permissao de

    Alteracao para Usar as Logomarcas do MySQL?. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

    1.4.4.4 Logomarcas dos Parceiros da MySQL AB. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

    1.4.4.5 Usando a Palavra MySQL em Texto Impressoou Apresentacao . . . . . . . . . . . . . . . . . . . . . . . . . . 21

    1.4.4.6 Usando a Palavra MySQL em Nomes deCompanhias e Produtos . . . . . . . . . . . . . . . . . . . 21

    1.5 Mapa de Desenvolvimento do MySQL. . . . . . . . . . . . . . . . . . . . 211.5.1 MySQL 4.0 in a Nutshell . . . . . . . . . . . . . . . . . . . . . . . 22

  • ii

    1.5.1.1 Recursos Disponiveis no MySQL 4.0 . . . . 221.5.1.2 Servidor Embutido MySQL . . . . . . . . . . . . 23

    1.5.2 MySQL 4.1 in a Nutshell . . . . . . . . . . . . . . . . . . . . . . . 241.5.2.1 Recursos Disponiveis no MySQL 4.1 . . . . 241.5.2.2 Stepwise Rollout . . . . . . . . . . . . . . . . . . . . . . 261.5.2.3 Pronto para Uso em Desenvolvimento

    Imediato . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261.5.3 MySQL 5.0, A Proxima Distribuicao de

    Desenvolvimento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261.6 MySQL e o Futuro (o TODO). . . . . . . . . . . . . . . . . . . . . . . . . . . 26

    1.6.1 Novos Recursos Planejados Para a Versao 4.1 . . . . 261.6.2 Novos Recursos Planejados Para a Versao 5.0 . . . . 271.6.3 Novos Recursos Planejados Para a Versao 5.1 . . . . 281.6.4 Novos Recursos Planejados Para a Versao em um

    Futuro Proximo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281.6.5 Novos Recursos Planejados Para a Versao em um

    Futuro a Medio Prazo . . . . . . . . . . . . . . . . . . . . . . . . . . . . 311.6.6 Novos Recursos que Nao Planejamos Fazer . . . . . . 32

    1.7 Fontes de Informacoes do MySQL . . . . . . . . . . . . . . . . . . . . . . . 331.7.1 Listas de Discussao MySQL . . . . . . . . . . . . . . . . . . . . 33

    1.7.1.1 As Listas de Discussao do MySQL . . . . . . 331.7.1.2 Fazendo perguntas ou relatando erros . . . 351.7.1.3 Como relatar erros ou problemas . . . . . . . 361.7.1.4 Guia para responder questoes na lista de

    discussao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 411.7.2 Suporte a Comunidade MySQL Atrves do IRC

    (Internet Relay Chat) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 411.8 Qual compatibilidade aos padroes o MySQL oferece ? . . . . . 41

    1.8.1 Qual Padrao o MySQL Segue? . . . . . . . . . . . . . . . . . . 421.8.2 Executando o MySQL no modo ANSI . . . . . . . . . . . 421.8.3 Extensoes do MySQL para o Padrao SQL-92 . . . . . 431.8.4 Diferencas do MySQL em Comparacao com o

    SQL-92 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 451.8.4.1 Subqueries . . . . . . . . . . . . . . . . . . . . . . . . . . . 461.8.4.2 SELECT INTO TABLE . . . . . . . . . . . . . . . . . . . 461.8.4.3 Transacoes e Operacoes Atomicas . . . . . . 461.8.4.4 Stored Procedures e Triggers . . . . . . . . . . . 491.8.4.5 Chaves Estrangeiras . . . . . . . . . . . . . . . . . . . 491.8.4.6 Views . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 511.8.4.7 -- como Inicio de Comentario . . . . . . . . 51

    1.8.5 Como o MySQL Lida com Restricoes . . . . . . . . . . . . 521.8.5.1 Restricoes de PRIMARY KEY / UNIQUE

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 521.8.5.2 Restricoes de NOT NULL . . . . . . . . . . . . . . . . 531.8.5.3 Restricoes de ENUM e SET. . . . . . . . . . . . . . . 53

    1.8.6 Erros Conhecidos e Deficiencias de Projetos noMySQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

  • iii

    1.8.6.1 Erros da Versao 3.23 Corrigidos em VersoesPosteriores do MySQL . . . . . . . . . . . . . . . . . . . . 53

    1.8.6.2 Open Bugs / Deficiencias de Projeto noMySQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54

    2 Instalacao do MySQL . . . . . . . . . . . . . . . . . . . . . 602.1 Instalacao rapida padrao do MySQL . . . . . . . . . . . . . . . . . . . . . 60

    2.1.1 Instalando o MySQL no Windows . . . . . . . . . . . . . . . 602.1.1.1 Exigencias do Sistema Windows . . . . . . . . 612.1.1.2 Instalando uma Distribuicao Binaria do

    Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 612.1.1.3 Preparando o Ambiente MySQL do

    Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 622.1.1.4 Selecionando um Servidor Windows . . . . 632.1.1.5 Iniciando o Servidor pela Primeira Vez . . 642.1.1.6 Iniciando o MySQL no Windows 95, 98, ou

    Me . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 652.1.1.7 Iniciando o MySQL no Windows NT, 2000,

    ou XP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 652.1.1.8 Executando o MySQL no Windows . . . . . 68

    2.1.2 Instalando o MySQL no Linux . . . . . . . . . . . . . . . . . . 692.1.3 Instalando o MySQL no Mac OS X . . . . . . . . . . . . . 712.1.4 Instalando o MySQL no NetWare . . . . . . . . . . . . . . . 73

    2.1.4.1 Instalando o MySQL para Binarios doNetWare . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74

    2.2 Detalhes Gerais de Instalacao . . . . . . . . . . . . . . . . . . . . . . . . . . . 752.2.1 Como obter o MySQL . . . . . . . . . . . . . . . . . . . . . . . . . 752.2.2 Verificando a Integridade do Pacote Usando MD5

    Checksums ou GnuPG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 752.2.3 Sistemas Operacionais suportados pelo MySQL . . 782.2.4 Qual versao do MySQL deve ser usada . . . . . . . . . . 802.2.5 Layouts de Instalacao . . . . . . . . . . . . . . . . . . . . . . . . . . 832.2.6 Como e quando as atualizacoes sao lancadas? . . . . 842.2.7 Filosofia das Distribuicoes - Nenhum Bug

    Conhecidos nas Distribuicoes . . . . . . . . . . . . . . . . . . . . . 842.2.8 Binarios MySQL compilados pela MySQL AB . . . 862.2.9 Instalando uma Distribuicao Binaria do MySQL . . 91

    2.3 Instalando uma distribuicao com fontes do MySQL . . . . . . . 932.3.1 Visao geral da instalacao rapida . . . . . . . . . . . . . . . . 942.3.2 Aplicando patches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 972.3.3 Opcoes tipicas do configure . . . . . . . . . . . . . . . . . . . 972.3.4 Instalando pela arvore de fontes do desenvolvimento

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1002.3.5 Lidando com Problemas de Compilacao . . . . . . . . 1032.3.6 Notas MIT-pthreads . . . . . . . . . . . . . . . . . . . . . . . . . . 1062.3.7 Instalando o MySQL a partir do Fonte no Windows

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1072.3.7.1 Construindo o MySQL Usando VC++ . . 108

  • iv

    2.3.7.2 Criando um Pacote Fonte do Windows apartir da Ultima Fonte de Desenvolvimento. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110

    2.4 Configuracoes e Testes Pos-instalacao . . . . . . . . . . . . . . . . . . . 1112.4.1 Problemas Executando o mysql_install_db. . . . 1152.4.2 Problemas Inicializando o Servidor MySQL . . . . . 1162.4.3 Inicializando e parando o MySQL automaticamente.

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . .