• Nenhum resultado encontrado

Instalando o MySQL no Windows

No documento 1 Informa¸c˜ oes Gerais . . . . 1 (páginas 94-103)

2 Instala¸c˜ ao do MySQL

2.1 Instala¸c˜ ao r´ apida padr˜ ao do MySQL

2.1.1 Instalando o MySQL no Windows

O processo de instala¸c˜ao para o MySQL no Windows tem os seguintes passos:

1. Instale a distribui¸c˜ao.

2. Configure um arquivo de op¸c˜ao se necess´ario.

3. Selcione o servidor que vocˆe quer usar.

4. Inicie o servidor.

O MySQL para Windows est´a dispon´ivel em dois formatos de distribui¸c˜ao:

A distribui¸c˜ao bin´aria cont´em um programa de instala¸c˜ao que instala que vocˆe precisa e assim possa iniciar o servidor imediatamente.

A distribui¸c˜ao fonte cont´em todo o c´odigo e os arquivos suportados para construir o execut´avel usando o compilador VC++6.0. Veja Se¸c˜ao 2.3.7 [Constru¸c˜ao do fonte para Windows], P´agina 107.

Geralmente, a melhor op¸c˜ao ´e a distribui¸c˜ao bin´aria. ´E mais simples e vocˆe n˜ao precisa de nenhuma ferramenta adicional para ter o MySQL em execu¸c˜ao.

2.1.1.1 Exigˆ encias do Sistema Windows

Para executar o MySQL no Windows, vocˆe precisar´a do seguinte:

Um sistema operacional Windows de 32 bits como 9x, ME, NT, 2000 ou XP. A fam´ilia NT (Windows NT, 2000 e XP) lhe permite executar o servidor MySQL como um servi¸co. Veja Se¸c˜ao 2.1.1.7 [NT start], P´agina 66.

Suporte ao protocolo TCP/IP.

Um c´opia da distribui¸c˜ao bin´aria do MySQL para Windows, o qual pode ser feito download em http://www.mysql.com/downloads/.

Nota: A distribui¸c˜ao de arquivos s˜ao fornecidas no formato zip e recomendamos o uso de um cliente FTP com op¸c˜ao de resumo para evitar corrompimento de arquivos durante o processo de download.

Um programaZIP para descompactar os arquivos da distribui¸c˜ao.

Espa¸co suficiente em disco para descompactar, instalar e criar o banco de dados de acordo com suas exigˆencias.

Se vocˆe planeja se conectar ao servidor MySQL via ODBC, vocˆe tamb´em precisar´a do dirver MyODBC. Veja Se¸c˜ao 12.2 [ODBC], P´agina 866.

Se vocˆe precisa de tabelas com tamanho maior que 4GB, instale o MySQL em um sistema de arquivos NTFS ou mais novo. N˜ao se esque¸ca de usarMAX_ROWSeAVG_ROW_

LENGTHquando criar tabelas. Veja Se¸c˜ao 6.5.3 [CREATE TABLE], P´agina 597.

2.1.1.2 Instalando uma Distribui¸c˜ ao Bin´ aria do Windows

Para instalar o MySQL no Windows usando uma distribui¸c˜ao bin´aria, siga este procedi-mento:

1. Se vocˆe estiver trabalhando em uma m´aquina Windows NT, 2000, ou XP, esteja certo de que vocˆe est´a logado com um usu´ario com privileios de administrador.

2. Se vocˆe estiver fazendo uma atualiza¸c˜ao de uma instala¸c˜ao MySQL mais nova, ´e necess´ario parar o servidor atual. Em m´aquinas com Windows NT, 200 ou XP, se vocˆe estiver executando o servidor como um servi¸co, pare-o com o comando:

C:\> NET STOP MySQL

Se vocˆe planeja usar um servidor diferente depois da atualiza¸c˜ao (por exemplo, se vocˆe quiser executar o mysqld-maxem vez domysqld), remova o servi¸co existente:

C:\mysql\bin> mysqld --remove 3.

Vocˆe pode reinstalar o servi¸co com o servidor pr´oprio depois de atualizar.

Se vocˆe n˜ao estiver executando o servidor MySQL como um servi¸co, pare desta forma:

C:\mysql\bin> mysqladmin -u root shutdown

4. Finalize o programaWinMySQLAdminse ele estiver em execu¸c˜ao.

5. Descompacte os arquivos de distribui¸c˜ao em um diret´orio tempor´ario.

6. Execute o programa ‘setup.exe’ para iniciar o processo de instala¸c˜ao. Se vocˆe quiser instalar em um diret´orio diferente do padr˜ao (‘c:\mysql’), use o bot˜ao Browse para especificar seu diret´orio preferido. Se vocˆe n˜ao instalar o MySQL no local padr˜ao, vocˆe precisar´a epecificar o local onde vocˆe inicia o servidor. O modo mais f´acil de se fazer isto ´e usar um arquivo de op¸c˜ao, como descrito em Se¸c˜ao 2.1.1.3 [Windows prepare environment], P´agina 62.

7. Finalize o processo de instala¸c˜ao.

2.1.1.3 Preparando o Ambiente MySQL do Windows

Se vocˆe precisar especificar op¸c˜oes de inicializa¸c˜ao quando executar o servidor, vocˆe pode indentifica-los na linha de comando ou coloc´a-los em um arquivo de op¸c˜ao. Par op¸c˜oes que s˜ao usadas sempre que o servidor iniciar, vocˆe achar´a mais conveniente utilizar um arquivo de opc˜ao para especificar a configura¸c˜ao do seu MySQL. Isto ´e particularmente verdade sob as seguintes circunstˆancias:

A localiza¸c˜ao do diret´orio de instala¸c˜ao ou dados s˜ao diferentes dos locais padr˜ao (‘c:\mysql’ e ‘c:\mysql\data’).

Vocˆe precisa ajustar as configura¸c˜oes do servidor. Por exemplo, para usar as tabelas transacionais InnoDBno MySQL vers˜ao 3.23, vocˆe deve criar manualmente dois novos diret´orios para guardar os arquivos de dados e de log do InnoDB — por exemplo,

‘c:\ibdata’ e ‘c:\iblogs’. Vocˆe tamb´em poder´a adicionar algumas linhas extras ao arquivo de op¸c˜ao, como descrito em Se¸c˜ao 7.5.3 [Iniciando o InnoDB], P´agina 643. (A partir do MySQL 4.0, o InnoDB cria os seus arquivos de log e dados no diret´orio de da-dos por padr˜ao. Isto significa que vocˆe n˜ao precisa configurar o InnoDB explicitamente.

Vocˆe ainda deve fazˆe-lo se desejar, e um arquivo de op¸c˜ao ser´a ´util neste caso.) No Windows, o instalador do MySQL coloca o diret´orio de dados diretamente sob o diret´orio onde vocˆe instalou o MySQL. Se vocˆe quisesse utilizar um diret´orio de dados em um local diferente, vocˆe deve copiar todo o conte´udo do diret´oriosdata para a nova localiza¸c˜ao. Por exemplo, por padr˜ao, o instalador coloca o MySQL em ‘C:\mysql’ e o diret´orio de dados em ‘C:\mysql\data’. Se vocˆe quiser usar um diret´orio de dados de ‘E:\mydata’, vocˆe deve fazer duas coisas:

Mova o diret´orio de dados de ‘C:\mysql\data’ para ‘E:\mydata’.

Use uma op¸c˜ao --datadir para especificar a nova localiza¸c˜ao do diret´orio de dados cada vez que vocˆe iniciar o servidor.

Quando o servidor MySQL inicia no Windows, ele procura pelas op¸c˜oes em dois arquivos:

O arquivo ‘my.ini’ no diret´orio Windows e o arquivo chamado ‘C:\my.cnf’. O diret´orio do Windows ´e normalmente chamado ‘C:\WINDOWS’ ou ‘C:\WinNT’. Vocˆe pode determinar a sua localiza¸c˜ao exata a partir do valor da vari´avel de ambienteWINDIRusando o seguinte comando:

C:\> echo %WINDIR%

O MySQL procura pelas op¸c˜oes primeiro no arquivo ‘my.ini’, e ent˜ao pelo arquivo ‘my.cnf’.

No entanto, para evitar confus˜ao, ´e melhor se vocˆe usar apenas um destes arquivos. Se o seu PC usa um boot loader onde o driveC: n˜ao ´e o drive de boot, sua ´unica op¸c˜ao ´e usar o arquivo ‘my.ini’. Independente de qual arquivo usar, ele deve ser no formato texto.

Um arquivo de op¸c˜ao pode ser criado e modificado com qualquer editor de texto como o programa Notepad. Por exemplo, se o MySQL est´a instalado em ‘D:\mysql’ e o diret´orio de dados est´a localizado em ‘D:\mydata\data’, vocˆe pode criar o arquivo de op¸c˜ao e definir uma se¸c˜ao[mysqld]para especificar valores para os parˆametros basedire datadir:

[mysqld]

# defina basedir com o seu caminho de instala¸c~ao basedir=D:/mysql

# defina datadir com o local do diret´orio de dados, datadir=D:/mydata/data

Note que os nome de caminho do Windows s˜ao espec´ificados em arquivos de op¸c˜ao usando barras normais em ves de barra invertida. Se vocˆe usar barras invertidas, vocˆe deve us´a-las em dobro.

Outro modo de se gerenciar um arquivo de op¸c˜ao ´e usar a ferramentaWinMySQLAdmin. Vocˆe pode encontrar o WinMySQLAdminno diret´orio ‘bin’ de sua instala¸c˜ao MySQL, assim como um arquivo de ajuda contendo instru¸c˜oes para us´a-lo. OWinMySQLAdmintem a capacidade de editar os seus arquivos de op¸c˜ao, mas note o seguinte:

WinMySQLAdmin usa apenas o arquivo ‘my.ini’.

Se o WinMySQLAdmin encontra o arquivo ‘C:\my.cnf’, ele o renomear´a para

‘C:\my_cnf.bak’ para disabilit´a-lo.

Agora vocˆe est´a pronto para testar o servidor.

2.1.1.4 Selecionando um Servidor Windows

Iniciado com o MySQL 3.23.38, a distribui¸c˜ao Windows inclui ambos bin´arios, normal e o MySQL-Max. Aqui est´a uma lista dos diferentes servidores MySQL dos quais vocˆe pode escolher:

Binario Descri¸c˜ao

mysqld Compilado com debugger integral e conferˆencia autom´atica de aloca¸c˜ao de mem´oria, links simb´olicos,BDB e tabelasInnoDB.

mysqld-opt Bin´ario otimizado. A partir da vers˜ao 4.0 o InnoDB est´a habili-tado. Antes desta vers˜ao, este servidor n˜ao tem suporte a tabelas transacionais.

mysqld-nt Bin´ario otimizado para NT/2000/XP com suporte para named pipes.

mysqld-max Bin´ario otimizado com suporte para links simb´olicos, tabelas BDB e InnoDB.

mysqld-max-nt Como omysqld-max, por´em compilado com suporte para named pipes.

Todos os bin´arios acima s˜ao otimizados para processadores Intel modernos mas deve fun-cionar em qualquer processador Intel i386 ou melhor.

Os servidores mysqld-nt e mysqld-max-nt suportam conex˜oes named pipe. Se vocˆe usar um destes servidores, o uso de named pipes est´a sujeito a estas condi¸c˜oes:

Os servidores devem ser executados em uma vers˜ao do Windows que suporte named pipes (NT, 2000, XP).

A partir da vers˜ao 3.23.50, named pipes s´o estar˜ao habilitados se vocˆe iniciar estes servidores com a op¸c˜ao --enable-named-pipe.

Os servidores podem ser executados no Windows 98 ou Me, mas o TCP/IP deve estar instalado, e as conex˜oes named pipes n˜ao podem ser usadas.

No Windows 95, estes servidores n˜ao podem ser usados.

2.1.1.5 Iniciando o Servidor pela Primeira Vez

No Windows 95, 98, ou Me, cliente MySQL sempre se conecta ao servidor usando TCP/IP.

Nos sistemas baseados no NT, como o Windows NT, 2000, ou XP, os clientes possuem duas op¸c˜oes. Eles podem usar TCP/IP, ou eles podem usar um named pipe se o servidor suportar conex˜oes named pipes.

Para informa¸c˜oes sobre qual servidor bin´ario executar, veja Se¸c˜ao 2.1.1.3 [Windows prepare environment], P´agina 62.

Esta se¸c˜ao lhe d´a um vis˜ao geral da inicializa¸c˜ao de um servidor MySQL. A seguinte se¸c˜ao fornce informa¸c˜ao mais espec´ifica para vers˜oes particulares do Windows.

Os exemplos nesta se¸c˜ao assumem que o MySQL est´a instalado sob a localiza¸c˜ao padr˜ao,

‘C:\mysql’. Ajuste o caminho mostrado nos exemplos se vocˆe tiver o MySQL instalado em um local diferente.

Fazer um teste a partir do prompt de comando do em uma janela de console (uma janela

“DOS”) ´e a melhor coisa a fazer porque o servidor mostra a mensagem de status que aparece na janela do DOS. Se alguma coisa estiver errado com sua configura¸c˜ao, estas mensagens tornar˜ao mais f´acil para vocˆe de identificar e corrigir qualquer problema.

Tenha certeza que vocˆe est´a no diret´orio onde o servidor ´e localizado e ent˜ao entre este comando:

shell> mysqld --console

Para servidores que incluem suporte InnoDB, vocˆe deve ver as seguintes mensagens assim que o servidor iniciar:

InnoDB: The first specified datafile c:\ibdata\ibdata1 did not exist:

InnoDB: a new database to be created!

InnoDB: Setting file c:\ibdata\ibdata1 size to 209715200 InnoDB: Database physically writes the file full: wait...

InnoDB: Log file c:\iblogs\ib_logfile0 did not exist: new to be created InnoDB: Setting log file c:\iblogs\ib_logfile0 size to 31457280

InnoDB: Log file c:\iblogs\ib_logfile1 did not exist: new to be created InnoDB: Setting log file c:\iblogs\ib_logfile1 size to 31457280

InnoDB: Log file c:\iblogs\ib_logfile2 did not exist: new to be created InnoDB: Setting log file c:\iblogs\ib_logfile2 size to 31457280

InnoDB: Doublewrite buffer not found: creating new InnoDB: Doublewrite buffer created

InnoDB: creating foreign key constraint system tables InnoDB: foreign key constraint system tables created

011024 10:58:25 InnoDB: Started

Quando o servidor finaliza sua sequˆencia de inicializa¸c˜ao, vocˆe deve ver algo como abaixo, que indica que o servidor est´a pronto para o conex˜ao com o cliente:

mysqld: ready for connections

Version: ’4.0.14-log’ socket: ’’ port: 3306

O servidor continuar´a a gravar no console qualquer sa´ida de diagn´ostico adicional que ele produza. Vocˆe pode abrir uma nova janela de console na qual se executar´a os programas clientes.

Se vocˆe omitir a op¸c˜ao --console, o servidor grava a sa´ida do diagn´ostico no log de erro no diret´orio de dados. O log de erro ´e o arquivo com a extens˜ao ‘.err’.

2.1.1.6 Iniciando o MySQL no Windows 95, 98, ou Me

No Windows 95, 98 ou Me, o MySQL usa TCP/IP para conectar um cliente a um servidor.

(Isto permitir´a que qualquer m´aquina na sua rede se conecte a seu servidor MySQL.) Por isto, vocˆe deve ter certeza de que o suporte TCP/IP est´a instalado na sua m´aquina antes de iniciar o MySQL. Vocˆe pode encontrar o TCP/IP no seu CD-ROM do Windows.

Note que se vocˆe estiver usando uma vers˜ao antiga do Win95 (por exemplo, OSR2). ´E prefer´ivel que vocˆe use um pacote antigo Winsock; para o MySQL ´e necess´ario o Winsock 2! Vocˆe pode obter o Winsock mais novo emhttp://www.microsoft.com. O Windows 98 tem a nova biblioteca Winsock 2, portanto n˜ao ´e necess´ario atualizar a biblioteca.

Para iniciar o servidormysqld, vocˆe deve iniciar uma janela do Prompt (Janela “MS-DOS”) e digitar:

shell> C:\mysql\bin\mysqld

Isto ir´a iniciar omysqldem segundo plano. Isto ´e, depois do servidor iniciar, vocˆe deve ver outro prompt de comando. (Note que se vocˆe iniciar o servidor deste modo no Windows NT, 2000 ou XP, o servidor ir´a executar em segundo plano e nenhum prompt de comando aparecer´a at´e que o servidor finalize. Por isto, vocˆe deve abrir outro prompt de comando para executar programas clientes enquanto o servidor estriver em execu¸c˜ao.)

Vocˆe pode finalizar o servidor MySQL executando:

shell> C:\mysql\bin\mysqladmin -u root shutdown

Isto chama o utilit´ario administrativo do MySQL mysqladminpara conectar ao servidor e manda-lo finalizar. O comando conecta comorootque ´e a conta administrativa padr˜ao no sistema de permiss˜oes do MySQL. Por favor, note que o sistema de permiss˜oes do MySQL

´e totalmente independente de qualquer login de usu´ario sob o Windows.

Se o mysqld n˜ao iniciar, por favor, verifique o log de erro para ver se o servidor escreveu alguma mensagem que possa indicar a causa do problema. Vocˆe pode tamb´em tentar iniciar o servidor commysqld --console; neste caso, vocˆe pode obter alguma informa¸c˜ao ´util na tela que pode ajudar a resolver o problema.

A ´ultima op¸c˜ao ´e iniciar o mysqldcom --standalone --debug. Neste caso o mysqld ir´a escrever em um arquivo log ‘C:\mysqld.trace’ que deve conter a raz˜ao pela qual omysqld n˜ao inicia. Veja Se¸c˜ao D.1.2 [Making trace files], P´agina 1071.

Usemysqld --helppara mostrar todas as op¸c˜oes que o mysqldentende!

2.1.1.7 Iniciando o MySQL no Windows NT, 2000, ou XP

Na fam´ilia NT (Windows NT, 2000 ou XP) o modo recomendado de executar o MySQL ´e instal´a-lo como um servi¸co do Windows. O Windows ent˜ao inicia e para o servidor MySQL automaticamente quando o Windows inicia e para. Um servidor instalado como um servi¸co tamb´em pode ser controlado a partir da linha de comando usando os comandos NET, ou com o utilit´ario gr´aficoServi¸cos.

O utilit´ario Servi¸cos (oService Control Manager do Windows) pode ser encontrado no Painel de Controledo Windows (emFerramentas Administrativasno Windows 2000).

E recomendado que se feche o utilit´ario´ Servi¸cosenquanto realiza a opera¸c˜oes de instala¸c˜ao ou remo¸c˜ao do servidor a partir desta linha de comando. Isto evita alguns erros estranhos.

Para ter o MySQL funcionando com TCP/IP no Windows NT 4, vocˆe deve instalar o service pack 3 (ou mais novo)!

Antes de instalar o MySQL como um servi¸co, vocˆe deve primeiro parar o servidor atual em execu¸c˜ao usando o seguinte commando:

shell> C:\mysql\bin\mysqladmin -u root shutdown

Isto chama o utilit´ario administrativo do MySQL mysqladmin para conectar ao servidor e mand´a-lo parar. O comando conecta com root que ´e a conta administrativa padr˜ao no sistema de permiss˜oes do MySQL. Por favor, note que o sistema de permiss˜oes do MySQL

´e totalmente independente de qualquer login de usu´ario sob o Windows.

Agora instale o servidor como um servi¸co:

shell> mysqld --install

Se vocˆe n˜ao definir um nome para o servi¸co, ele ´e instalado com o nome MySQL. Uma vez instalado, ele pode ser imediatamente iniciado a partir do utilit´arioServi¸cos, ou usando o comandoNET START MySQL. (Este comando ´e caso insensitivo).

Uma vez em execu¸c˜ao, omysqldpode ser parado usando o utilit´ario de Servi¸cos ou usando o comando NET STOP MySQL, ou o comandomysqladmin shutdown.

Se vocˆe tiver problemas instalando o mysqld como um servico usando apenas o nome do servidor, tente instal´a-lo usando seu caminho compelto:

shell> C:\mysql\bin\mysqld --install

A partir do MySQL 4.0.2, vocˆe pode especificaro nome do servi¸co depois da op¸c˜ao --install. A partir do MySQL 4.0.3, vocˆe pode especificar uma op¸c˜ao --defaults-file depois do nome do servi¸co para indicar onde o servidor deve obter op¸c˜oes ao iniciar. A regras que determinam o nome do servi¸co e os arquivos de op¸c˜ao que o servidor usa s˜ao as seguintes:

Se vocˆe n˜ao especificar um nome de servi¸co, o servidor usa o nome padr˜ao doMySQL e o servidor lˆe as op¸c˜oes do grupo[mysqld] no arquivo de op¸c˜oes padr˜ao.

Se vocˆe especificar um nome de servi¸co depois da op¸c˜ao --install, o servidor ignora o grupo de op¸c˜ao[mysqld]em vez de ler op¸c˜oes do grupo que tem o mesmo nome que o servi¸co. O servidor le op¸c˜oes do arquivo de op¸c˜oes padr˜ao.

Se vocˆe especificar uma op¸c˜ao --defaults-filedepois do nome de servi¸co, o servidor ignora o arquivo de op¸c˜oes padr˜ao e lˆe op¸c˜oes apenas a partir do grupo [mysqld] do arquivo indicado.

No caso normal que vocˆe instala o servidor com--install mas nenhum nome de servi¸co, o servidor ´e instalado com um nome de servi¸co deMySQL.

Como um exemplo mais complexo, considere o seguinte comando:

shell> C:\mysql\bin\mysqld --install mysql --defaults-file=C:\my-opts.cnf Aqui, um nome de servi¸co ´e dado depois de op¸c˜ao --install. Se nenhuma op¸c˜ao --defaults-filefor dada, este comando teria o efeito de fazer o servidor ler o grupo[mysql]

a partir do arquivo de op¸c˜oes padr˜ao. (Isto seria uma m´a id´eia, porque aquele grupoo de op¸c˜ao ´e para ser usado pelo programa cliente mysql.) No entanto, como a op¸c˜ao --defaults-fileest´a presente, o servidor lˆe as op¸c˜oes apenas a partir do arquivo indicado, e apenas do grupo de op¸c˜ao [mysqld].

Vocˆe tamb´em pode especificar as op¸c˜oes como “Par^ametros de inicializa¸c~ao” no utilit´ario deServi¸cosdo Windows antes de vocˆe iniciar o servi¸co MySQL.

Uma vez que o servidor MySQL ´e instalado, o Windows ir´a iniciar o servi¸co automaticamente sempre que o Windows inicia. O servi¸co tamb´em pode ser iniciado imediatamente a partir do utilit´arioServi¸cosou usando o comandoNET START MYSQL. O comandoNETn˜ao ´e caso sensitivo.

Note que quando executado como um servi¸co, o mysqld n˜ao tˆem acesso a um console e ent˜ao nenhuma mensagem pode ser vista. Se omysqldn˜ao iniciar, verifique o log de erros par ver se o servidor gravou alguma mensagem l´a indicando a causa do problema. O log de erro est´a localizado no diret´orio ‘c:\mysql\data’. ´E o arquivo com um sufixo ‘.err’.

Quando omysqldest´a executando como um servi¸co, ele pode ser parado usando o utilit´arios Servi¸cos, o comandoNET STOP MYSQL, ou o comando mysqladmin shutdown. Se o servi¸cp estiver em execu¸c˜ao quando o Windows desliga, o Windows ir´a parar o servidor automati-camente.

A partir do MySQL vers˜ao 3.23.44, vocˆe pode escolher entre instalar o servidor como um servi¸co Manual se vocˆe n˜ao deseja que os servi¸cos sejam executados automaticamente du-rante o processo de inicializa¸c˜ao. Para fazer isto, use a op¸c˜ao --install-manual em vez da op¸c˜ao--install.

shell> C:\mysql\bin\mysqld --install-manual

Para remover um servi¸co que est´a instalado como um servi¸co, primeiro pare-o se ele estiver em execu¸c˜ao. Ent˜ao use a op¸c˜ao --removepara removˆe-lo:

Para remover um servi¸co que est´a instalado como um servi¸co, primeiro pare-o se ele estiver em execu¸c˜ao. Ent˜ao use a op¸c˜ao --removepara removˆe-lo:

No documento 1 Informa¸c˜ oes Gerais . . . . 1 (páginas 94-103)