Domando o MySQL - · PDF fileSAP poderia levá-lo a pensar que ... interface para...

3
oteca Gtkmm (GTK--) [2] foi usada no desenvolvimento da interface gráfica da versão Linux. A parceria da MySQL como a SAP poderia levá-lo a pensar que o MYSQL Administrator é baseado no SAPDB Database Manager, mas Mike Zinner nos garantiu que se trata de um “software completamente novo”. Quando pedimos que comparasse o MySQL Admin- istrator com o Enterprise Ma- nager do MS-SQL, ele explicou que “no momento o MA disponi- biliza apenas algumas das funções que o Enterprise Manager possui. Precisaremos esperar pelo término do desenvolvimento das interfaces gráficas para o MySQL ao longo deste ano para ter um conjunto completo de recursos.” Monitorando a CPU O recurso de monitoração da CPU imple- mentados no MA merece destaque. Em tempo real, gráficos dinâmicos exibem valores críticos que podem incluir uso de memória ou acesso ao disco rígido, e o número de conexões no servidor de banco de dados (veja Figura 1). Este recurso permite ao administrador ver e reconhecer gargalos de forma indepen- dente do tipo de tabela usada (MyISAM ou InnoDB). O MA pode disponibilizar ao administrador estatísticas de um con- junto de variáveis, tais como bytes_sent e bytes_received, que indicam o volume de tráfego de rede. Administradores de banco de dados experientes podem definir quais va- riáveis desejam exibir para analisar um servidor de forma mais adequada às suas necessidades. Usando uma fórmula sim- ples eles podem, por exemplo, criar um gráfico que exiba o número de bytes transmitidos por segundo através da rede. Para criar este gráfico, basta sele- cionar na lista de variáveis, usando o mouse, Bytes_sent, clicar com o botão direito no campo valor e digitar a fór- mula onde aparece ˆBytes_sent. A MySQL AB, fabricante do banco de dados MySQL, está desenvol- vendo um conjunto de ferramen- tas gráficas para tornar mais fácil a vida do administrador MySQL que encontra dificuldade no uso de comandos via ter- minal. O conjunto completo de ferra- mentas, que deve estar disponível dentro de um ano, facilitará tarefas como insta- lação, configuração, e monitoramento de clusters MySQL para replicação e balan- ceamento de carga. Assim como o pró- prio MySQL, suas ferramentas gráficas serão disponibilizadas sob a licença GPL. A MySQL anunciou sua linha de pro- dutos gráficos em janeiro deste ano, quando demonstrou o MySQL Adminis- trator [1] em Nova York, na Linux World Expo. A Linux Magazine teve acesso ao novo software, e conversou com o princi- pal desenvolvedor, Mike Zinner, sobre as ferramentas para administração que a MySQL AB tem produzido. MySQL Administrator (MA) é um con- sole gráfico para administração de ban- cos de dados MySQL versão 4 ou superior. O MA é capaz de abrir uma conexão não criptografada, ou crip- tografada com SSL, com servidores MySQL. Quando a Linux Magazine teve acesso ao software, os desenvolvedores A MySQL AB disponibilizou uma ver- são preliminar de uma interface grá- fica para administração de bancos de dados, que permite a configu- ração e monitoramento remoto de servidores MySQL. Mais fer- ramentas estão sendo desen- volvidas, para modelagem de dados e criação de clusters POR SANDRO ZIC 50 Agosto 2004 www.linuxmagazine.com.br MySQL Administrator TUTORIAL Nova Interface para Administração de Servidores de Banco de Dados Domando o MySQL não haviam adicionado suporte à cone- xões via SSH. O novo conjunto de pro- gramas também inclui recursos para monitoramento de usuários, estado do sistema, backup e recuperação de dados, e visualização de “logs”. Versões prelim- inares (beta) para Windows e Linux já se encontram disponíveis para download, e a versão para Mac OS X deverá estar pronta até o final do ano. Sem o peso do Java Neste artigo, testamos a versão para Linux num sistema Suse 9.0 com KDE 3.1.4, e uma versão para Windows em uma máquina com o Windows XP Pro- fessional. Como nossa versão de teste foi uma distribuição pré-alpha extraída dire- tamente dos desenvolvedores, nós espe- rávamos encontrar alguns problemas. Na verdade, o software demonstrou ser ex- cepcionalmente estável em ambas as plataformas, e a instalação foi realizada sem maiores surpresas ou dificuldades. O software inicializou de forma muito rápida em ambos os sistemas. Contras- tando com alguns utilitários gráficos baseados em Java, que inicializam deva- gar, o MA utiliza bibliotecas em C. A interface para ambiente Windows foi desenvolvida em Delphi VCL, e a bibli-

Transcript of Domando o MySQL - · PDF fileSAP poderia levá-lo a pensar que ... interface para...

Page 1: Domando o MySQL - · PDF fileSAP poderia levá-lo a pensar que ... interface para ambiente Windows foi desenvolvida em Delphi VCL, e a bibli-O caractere ^ simboliza o intervalo de

oteca Gtkmm (GTK--) [2] foi usada nodesenvolvimento da interface gráfica

da versão Linux.A parceria da MySQL como aSAP poderia levá-lo a pensar queo MYSQL Administrator ébaseado no SAPDB DatabaseManager, mas Mike Zinnernos garantiu que se trata deum “software completamentenovo”. Quando pedimos quecomparasse o MySQL Admin-

istrator com o Enterprise Ma-nager do MS-SQL, ele explicou

que “no momento o MA disponi-biliza apenas algumas das funções

que o Enterprise Manager possui.Precisaremos esperar pelo término do

desenvolvimento das interfaces gráficaspara o MySQL ao longo deste ano parater um conjunto completo de recursos.”

Monitorando a CPUO recurso de monitoração da CPU imple-mentados no MA merece destaque. Emtempo real, gráficos dinâmicos exibemvalores críticos que podem incluir uso dememória ou acesso ao disco rígido, e onúmero de conexões no servidor debanco de dados (veja Figura 1). Esterecurso permite ao administrador ver ereconhecer gargalos de forma indepen-dente do tipo de tabela usada (MyISAMou InnoDB). O MA pode disponibilizarao administrador estatísticas de um con-junto de variáveis, tais como bytes_sent ebytes_received, que indicam o volume detráfego de rede.

Administradores de banco de dadosexperientes podem definir quais va-riáveis desejam exibir para analisar umservidor de forma mais adequada às suasnecessidades. Usando uma fórmula sim-ples eles podem, por exemplo, criar umgráfico que exiba o número de bytestransmitidos por segundo através darede. Para criar este gráfico, basta sele-cionar na lista de variáveis, usando omouse, Bytes_sent, clicar com o botãodireito no campo valor e digitar a fór-mula onde aparece ˆBytes_sent.

AMySQL AB, fabricante do bancode dados MySQL, está desenvol-vendo um conjunto de ferramen-

tas gráficas para tornar mais fácil a vidado administrador MySQL que encontradificuldade no uso de comandos via ter-minal. O conjunto completo de ferra-mentas, que deve estar disponível dentrode um ano, facilitará tarefas como insta-lação, configuração, e monitoramento declusters MySQL para replicação e balan-ceamento de carga. Assim como o pró-prio MySQL, suas ferramentas gráficasserão disponibilizadas sob a licença GPL.

A MySQL anunciou sua linha de pro-dutos gráficos em janeiro deste ano,quando demonstrou o MySQL Adminis-trator [1] em Nova York, na Linux WorldExpo. A Linux Magazine teve acesso aonovo software, e conversou com o princi-pal desenvolvedor, Mike Zinner, sobre asferramentas para administração que aMySQL AB tem produzido.

MySQL Administrator (MA) é um con-sole gráfico para administração de ban-cos de dados MySQL versão 4 ousuperior. O MA é capaz de abrir umaconexão não criptografada, ou crip-tografada com SSL, com servidoresMySQL. Quando a Linux Magazine teveacesso ao software, os desenvolvedores

A MySQL AB disponibilizou uma ver-

são preliminar de uma interface grá-

fica para administração de bancos

de dados, que permite a configu-

ração e monitoramento remoto

de servidores MySQL. Mais fer-

ramentas estão sendo desen-

volvidas, para modelagem de

dados e criação de clusters

POR SANDRO ZIC

50 Agosto 2004 www.linuxmagazine.com.br

MySQL AdministratorTUTORIAL

Nova Interface para Administração de Servidores de Banco de Dados

Domando o MySQL

não haviam adicionado suporte à cone-xões via SSH. O novo conjunto de pro-gramas também inclui recursos paramonitoramento de usuários, estado dosistema, backup e recuperação de dados,e visualização de “logs”. Versões prelim-inares (beta) para Windows e Linux já seencontram disponíveis para download, ea versão para Mac OS X deverá estarpronta até o final do ano.

Sem o peso do JavaNeste artigo, testamos a versão paraLinux num sistema Suse 9.0 com KDE3.1.4, e uma versão para Windows emuma máquina com o Windows XP Pro-fessional. Como nossa versão de teste foiuma distribuição pré-alpha extraída dire-tamente dos desenvolvedores, nós espe-rávamos encontrar alguns problemas. Naverdade, o software demonstrou ser ex-cepcionalmente estável em ambas asplataformas, e a instalação foi realizadasem maiores surpresas ou dificuldades.

O software inicializou de forma muitorápida em ambos os sistemas. Contras-tando com alguns utilitários gráficosbaseados em Java, que inicializam deva-gar, o MA utiliza bibliotecas em C. Ainterface para ambiente Windows foidesenvolvida em Delphi VCL, e a bibli-

Page 2: Domando o MySQL - · PDF fileSAP poderia levá-lo a pensar que ... interface para ambiente Windows foi desenvolvida em Delphi VCL, e a bibli-O caractere ^ simboliza o intervalo de

O caractere ^ simboliza o intervalo detempo no MA que, por padrão, é “porsegundo”. Esta notação é reconhecidapelo MA que passa a exibir, de formadinâmica, os valores assumidos por estavariável em um gráfico. Outras fórmulasmais complexas podem ser geradas damesma forma. Por exemplo, se você pre-cisar de um gráfico dos cache hits,mostrados como um porcentual dassolicitações totais ao cache, atualizadono intervalo de um segundo:

(^[Qcache_hits]/(^[Qcache_Uhits]+^[QCache_inserts]+^[UQCache_not_cached]))*100

Esta forma de implementação abre umanova perspectiva de monitoração para osprofissionais experientes em adminis-tração de bancos de dados.

Gerenciamento de UsuáriosO MA integra o gerenciamento deusuários de forma muito mais conve-niente do que qualquer outro programade sua categoria. Clique em User Admi-nistration para mostrar uma lista com-pleta de usuários no lado esquerdo dajanela (veja a Figura 2). Você pode, como mouse, selecionar um usuário e visu-alizar o nome dos servidores aos quaisele possui acesso. O administrador pode,da mesma forma, selecionar um servidore registrar novos usuários, incluindo se-nhas, dados para contato, uma descriçãoda função do usuário ou até mesmo adi-cionar uma foto.

O MySQL possibilita o controle deacesso por servidor, banco de dados,tabela ou coluna. Páginas especiais noMySQL Administrator permitem aosadministradores gerenciar cada umdestes grupos de controle. As funçõesestão disponíveis em páginas de rápidoacesso. Cada página tem, à sua direita,uma lista de privilégios. O administradorque estiver operando o MA poderáatribuir privilégios aos usuários de formasimples, basta usar o velho truque do“arrastar e soltar” arrastando os privilé-gios até o usuário que deve recebê-los. Ouso deste recurso permite ao admin-istrador restringir o acesso de usuáriosaos servidores de banco de dados. Oadministrador pode, por exemplo, definirlimites tais como o número máximo deconexões por hora.

Recursos ÚteisAlém da praticidade na administração detarefas, o MA traz recursos para geren-ciamento de rotinas de backup. Paracriar um backup, o administrador pri-meiramente cria uma referência, nave-gando na interface e selecionando dentreos objetos do banco de dados, aquilo quedeve armazenado no arquivo de backup.Esta implementação permite que, desdeum banco de dados completo, ou mesmouma única tabela, até uma simples co-luna, possam ser selecionados e o back-up executado. Um outro recurso, quepermitirá aos administradores definir ta-refas e pré-programar sua execução, en-contra-se em fase de desenvolvimento.

A atenção aos detalhes faz do MA umaferramenta muito útil no dia-a-dia. Porexemplo, o recurso que permite separarentradas de erros, ou o log de consultaslentas em uma janela separadas. Issopermite ao administrador filtrar rapida-mente os registros críticos, acelerando aanálise do log. Basta um simples cliqueem um evento registrado e o MA exibirárapidamente o referido contexto noarquivo de log.

Explicações sobre as várias opçõesencontradas no arquivo de global deconfiguração do servidor (my.cnf) po-dem ser encontradas no MA. Junto comopção que habilita e desabilita o modode debug há um aviso de que o banco dedados trabalhará de forma mais lentaneste modo, pois todas as atividadesserão registradas. No programa tambémexistem várias dicas úteis para usuáriosinexperientes ou principiantes.

Na versão que testamos, o compo-nente para monitoração de bancos dedados replicados não estava implemen-tado. Contudo, fomos informados de queele fornece apenas uma visão geral docluster; um aplicativo separado, chama-do de Replication Manager, estará dispo-nível para o gerenciamento de clustersno futuro. Misterioso, Mike Zinner nãoquis detalhar o tipo de administraçãoque será suportado pelo ReplicationManager. Entretanto, Mike revelou quegostaria de construir um cenário de repli-cação que fosse simples e adicionou,“nós demonstraremos algo realmentebom em abril, durante a conferência dosusuários do MySQL”.

Planejando mais FerramentasWorkbench é o codinome de outro pro-jeto em andamento. A primeira versãoestável deverá ser similar ao DB Designer4 [4]. Os administradores poderão,através do Workbench, criar e modificarestruturas do banco de dados em umainterface amigável, que exibirá, porexemplo, os relacionamentos (ForeignKeys). Usuários do MySQL esperam comcuriosidade para saber se o Workbench”disponibilizará uma ferramenta dedebug para stored procedures, como aque deve ser implementada na versão5.0 do MySQL.

Mike Zinner nos disse que “Work-bench e Query Analyser suportarão ogerenciamento de stored procedures. OMA fornecerá apenas uma simples visãogeral, assim como o módulo de repli-cação, permitindo ao administrador abrir

51Agosto 2004www.linuxmagazine.com.br

TUTORIALMySQL Administrator

Figura 1: Monitoramento do comportamento de um sistema. Esta tela exibe uma visão geral do estadoda memória em um servidor.

Page 3: Domando o MySQL - · PDF fileSAP poderia levá-lo a pensar que ... interface para ambiente Windows foi desenvolvida em Delphi VCL, e a bibli-O caractere ^ simboliza o intervalo de

Administrator, especialmente em funçãode suas características de usabilidade emonitoração de sistema, mesmo emcondições críticas. Boas novas para osadministradores que preferem a velhainterface de linha de comando: vocêpode acessar um shell de dentro do pro-grama e navegar entre vários consoles.

O MA é uma proposta interessante porapresentar novos horizontes à adminis-tração de bancos de dados gratuitos, semse esquecer dos administradores ini-ciantes. O grande conjunto de parâme-tros possibilita a configuração de umservidor MySQL nos mínimos detalhes, e

a ferramenta para gerenciamento deusuários economiza tempo e trabalho dedigitação. Os iniciantes podem acessar aseção Best Practices [6] onde encontrarãoconselhos sobre ajustes para melhordesempenho e administração eficientede seus bancos de dados. Já os admin-istradores experientes provavelmenteserão beneficiados com ferramentasfuturas como o Replication Manager. ■

o Workbench ou o Query Analyzer paratrabalhar em uma stored procedureespecífica.” O Query Analyser suportaexecução de consultas e manipulaçãodos resultados, além da análise de con-sultas individuais e stored proceduresbaseada em declarações “EXPLAIN”.Mais detalhes sobre este recurso foramapresentados na “MySQL Conference”.

O “MySQL Administrator” marca o iní-cio de uma nova família de produtos quediminuirá o esforço necessário para aboa administração de bancos de dados.Esta família de produtos está dividida emduas linhas: as ferramentas administrati-vas, compostas pelo MA, ainda em cons-trução, e ferramentas para desenvol-vimento como o Workbench, o QueryAnalyser e o Replication Manager.

Conjunto CompletoA MySQL AB possui como objetivo aprodução de versões estáveis destesaplicativos até o final de 2004. O ciclo dedesenvolvimento incluirá versões Alpha,Beta e Gamma que caminharão progres-sivamente rumo a uma versão estável,em linha com o desenvolvimento doBanco de Dados MySQL. A longo prazo,a empresa pretende substituir o “MySQLControl Center [5]”. Mesmo os mais fer-vorosos defensores do shell provavel-mente não aguentarão esperar para terem suas mãos uma versão do MySQL

52 Agosto 2004 www.linuxmagazine.com.br

MySQL AdministratorTUTORIAL

[1] MySQL Administrator: http://www.mysql.com/products/administrator/

[2] Gtkmm: http://www.gtkmm.org

[3] SAPDB Database Manager:http://www.sapdb.org/7.4/sap_db_dbm.htm

[4] DB Designer 4:http://fabforce.net/dbdesigner4/

[5] MySQL Control Center: http://www.mysql.com/products/mysqlcc/

[6] MySQL Administrator - “Best Practices”:http://www.mysql.com/articles/mysql-administrator-best-practices.html

Figura 2: Tela de gerenciamento de usuários. O administrador pode designar quais usuários terão acessoao servidor. Esta tela foi capturada de uma versão do MA para Linux.

Figura 3: Visão geral de um cluster MySQL. Nós podem ser adicionados e removidos facilmente com ouso do mouse.

Sandro Zic brinca comcomputadores desdea infância, quandoescreveu seus primei-ros programas emBASIC. Ele se dedicaprofissionalmente aodesenvolvimento de software desde1998, e possui conhecimentos emLinux, Perl, PHP, Servlets Java, JSP, XMLe sistemas de bancos de dados comoMySQL, PostgreSQL e Oracle. Atual-mente é CEO da ZZ/OSS.

SOBR

EO

AUTO

R

INFORMAÇÕES