• Nenhum resultado encontrado

Qual vers˜ ao do MySQL deve ser usada

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

Verificando Assinatura Usando RPM

2.2.4 Qual vers˜ ao do MySQL deve ser usada

A primeira decis˜ao a ser feita ´e se vocˆe deve usar a ´ultima vers˜ao de desenvolvimento ou a

´

ultima vers˜ao est´avel:

Normalmente, se vocˆe estiver usando o MySQL pela primeira vez ou tentando port´a-lo para algum sistema em que n˜ao exista distribui¸c˜ao bin´aria, recomendamos o uso da vers˜ao est´avel (atualmente Vers˜ao 5.0.0-alpha). Repare que todos os lan¸camentos do MySQL s˜ao conferidos com os testes comparativos de performance e um conjunto extenso de testes antes de cada lan¸camento.

Sen˜ao, caso vocˆe esteja trabalhando com um antigo sistema e quiser atualiz´a-lo, mas n˜ao que correr o risco com uma atualiza¸c˜ao sem corre¸c˜oes, vocˆe deve faze-lo do mesmo ramo que vocˆe est´a usando (onde aenas o ´ultimo n´umero da vers˜ao ´e mais novo que o seu).

N´os temos tentado corrigir somente erros fatais e torn´a-los menores, com altera¸c˜oes relativamente seguras para aquela vers˜ao.

A segunda decis˜ao a ser feita ´e se vocˆe deseja usar uma distribui¸c˜ao fonte ou bin´aria. Na maioria dos casos provavelmente vocˆe dever´a usar a distribui¸c˜ao bin´aria, se alguma existir para sua plataforma, ser´a normalmente muito mais f´acil para instalar do que a distribui¸c˜ao em c´odigo fonte.

Nos seguites casos vocˆe provavelmente ser´a mais bem servido com uma instala¸c˜ao baseada em c´odigo fonte:

Se vocˆe desejar instalar o MySQL em algum lugar expec´ifico. (O padr˜ao das dis-tribui¸c˜oes bin´arias ´e estar“pronto para rodar” em qualquer lugar, mas talvez vocˆe deseje ainda mais flexibilidade).

Para estar apto e satisfazer diferentes requisi¸c˜oes dos usu´arios, estaremos fornecendo duas vers˜oes bin´arias diferentes; Uma compilada com os manipuladores de tabelas n˜ao transacionais (um bin´ario r´apido e pequeno) e um configurado com as mais importantes op¸c˜oes extendidas como tabelas transacionais. Ambas vers˜oes s˜ao compiladas da mesma distribui¸c˜ao fonte. Todos clientes MySQL nativos pode conectar com ambas vers˜oes do MySQL.

A distribui¸c˜ao bin´aria extendida ´e marcada com o sufixo -max e ´e configurada com as mesmas op¸c˜oes de mysqld-max. Veja Se¸c˜ao 4.8.5 [mysqld-max], P´agina 344.

Se vocˆe deseja usar o RPMMySQL-Max, primeiramente vocˆe deve instalar o RPM MySQL-serverpadr˜ao.

Se vocˆe deseja configurar mysqld com alguns recursos extras que N ˜AO est˜ao nas dis-tribui¸c˜oes bin´arias. Segue abaixo a lista das op¸c˜oes extras mais comuns que vocˆe pode querer usar:

--with-innodb

--with-berkeley-db(padr˜ao para o MySQL 4.0 e seguintes)

--with-raid(n˜ao dispon´ivel para todas as plataformas)

--with-libwrap

--with-named-z-lib(Isto ´e feito para alguns dos bin´arios)

--with-debug[=full]

A distribui¸c˜ao bin´aria padr˜ao ´e normalmente compilada com suporte para todos con-juntos de caracteres e deve funcionar em uma variedade de processadores para a mesma fam´ilia do processador.

Se vocˆe precisar de um servidor MySQL mais r´apido vocˆe pode querer recompil´a-lo com suporte para somente o conjunto de caracteres que vocˆe precisa, usar um compilador melhor (como pgcc) ou usar op¸c˜oes de compiladores para usar otimiza¸c˜oes para seu processador.

Se vocˆe encontrar um erro e relat´a-lo para o time de desenvolvimento do MySQL vocˆe provavelmente receber´a um patch que ser´a necess´ario aplic´a-lo para a distribui¸c˜ao fonte para ter o bug corrigido.

Se vocˆe deseja ler (e/ou modificar) o c´odigo C e C++que ´e o MySQL, vocˆe pode obter uma distribui¸c˜ao fonte. O c´odigo fonte ´e sempre o manual final. Distribui¸c˜oes fontes tamb´em contem mais testes e exemplos que as distribui¸c˜oes bin´arias.

O esquema de nomes do MySQL usa n´umeros de vers˜oes que consistem de tres n´umeros e um sufixo. Por exemplo, um nome de lan¸camento comomysql-4.1.0-alpha´e interpretado da seguinte maneira:

O primeiro n´umero (4) ´e a vers˜ao principal e tamb´em descreve o formato dos arquivos.

Todas releases da Vers˜ao 4 tem o mesmo formato de arquivo.

O segundo n´umero (1) ´e o n´ivel da distribui¸c˜ao.

O terceiro n´umero (0´e o n´umero da vers˜ao do n´ivel de distribui¸c˜ao. Este ´e incrementado para cada nova distribui¸c˜ao. Normalmente vocˆe desejar´a a ´ultima vers˜ao para o n´ivel de publica¸c˜ao que tiver escolhido.

O sufixo (alpha) indica o n´ivel de estabilidade da vers˜ao. Os poss´iveis sufixo s˜ao:

alphaindica que a vers˜ao cont´em grandes se¸c˜oes de novos c´odigos que n˜ao foram 100% testados. Bugs conhecidos (normalmente n˜ao tem nenhum) devem estar doc-umentados na se¸c˜ao News. Veja Apˆendice C [News], P´agina 948. Existem tamb´em novos comandos e extens˜oes na maioria das publica¸c˜oes alpha. Desenvolvimento ativo que podem envolver maiores altera¸c˜oes no c´odigo pode ocorrer numa vers˜ao alpha, mas tudo ser´a testado antes de fazer a publica¸c˜ao. N˜ao podem existir erros conhecidos em nenhuma publica¸c˜ao do MySQL.

beta significa que todo o novo c´odigo foi testado. N˜ao ser˜ao adicionados novos recursos que podem causar algum tipo de corrompimento. N˜ao deve existir bugs conhecidos. Uma altera¸c˜ao de vers˜ao de alpha para beta ocorre quando n˜ao existir nenhum relato de erro fatal com uma vers˜ao alpha por pelo menos um mˆes e n˜ao planejarmos adicionar nenhum recurso que pode deixar algum antigo comando menos confi´avel.

gamma ´e o beta que j´a tem sido usado a algum tempo e parece funcionar bem.

Apenas pequenas corre¸c˜oes s˜ao adicionadas. Isto ´e o que muitas empresas chamam de release.

Se n˜ao existir um sufixo, significa que esta vers˜ao j´a est´a sendo executada h´a algum tempo em diferentes locais sem relatos de erros al´em dos espec´ificos de certas plataformas. Somente corre¸c˜oes de erros cr´iticos s˜ao adicionados ao release.

Isto ´e o que chamamos de uma distribui¸c˜ao est´avel.

No processo de desenvolvimento do MySQL, v´arias vers˜oes coexistem e est˜ao em um est´agio diferente. Naturalmente, corre¸c˜oes de erros relevantes de uma s´erie anterior s˜ao propagados.

Para a antiga s´erie3.23est´avel/de produ¸c˜ao, novas vers˜oes s´o s˜ao liberadas para erros cr´iticos.

A s´erie atual (4.0) ´e de qualidade est´avel/produ¸c˜ao. Nenhum novo recurso que possa influenciar a estabilidade do c´odigo ´e adicionado.

No ramo alpha 4.1principal, novos recursos s˜ao adicionados. Fontes e bin´arios est˜ao dispon´iveis para uso e teste em sistemas de desenvolvimento.

O ramo de desenvolvimento 5.0s´o est´a dispon´ivel para a ´arvore do BitKeeper.

Todas as vers˜oes do MySQL funcionam sobre nossos testes padr˜oes e comparativos para garantir que eles s˜ao relativamente seguros para o uso. Como os testes padr˜oes s˜ao exten-didos ao longo do tempo para conferir por todos os bugs antigos encontrados, o pacote de testes continua melhorando.

Perceba que todas publica¸c˜oes de vers˜oes foram testadas pelo menos com:

Um pacote de testes interna

Faz parte de um sistema de produ¸c˜ao para um cliente. Ela tem diversas tabelas com centenas de megabytes de dados.

O pacote de comparativos da MySQL

Este executa uma s´erie de consultas comuns. ´E tamb´em um teste para ver se o ´ultimo conjunto de otimiza¸c˜oes fez o c´odigo mais r´apido. Veja Se¸c˜ao 5.1.4 [MySQL Benchmarks], P´agina 422.

O testecrash-me

Este tenta determinar quais recursos o banco de dados suporta e quais s˜ao suas capacidades e limita¸c˜oes. Veja Se¸c˜ao 5.1.4 [MySQL Benchmarks], P´agina 422.

Outro teste ´e que n´os usamos a vers˜ao do MySQL mais nova em nosso ambiente de produ¸c˜ao interna, em pelo menos uma m´aquina. N´os temos mais de 100 gigabytes de dados com que trabalhar.

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