Hello everyone, here we go for a new blog post and now treating about InnoDB inside MySQL 5.5 and as you should now, this new version uses InnoDB Plugin version 1.1 which one has a lot of new adjustable resources. What most caught my attention was the impressed way that users could adjust it to have [...]
« Anterior 10 Mais recentes entradas | Próximo 1 Entradas mais antigos »
Olá Pessoal!
Nesse artigo vamos falar sobre Identificadores no MySQL, algo extremanente importante em nosso cotidiano com o banco de dados, mas que por vezes não entendemos bem o funcionamento.
Quando escrevemos requisições SQL, usamos nomes para nos referirmos a banco de dados e outros objetos contidos neles, tais como tabelas, stored routines, triggers entre outros. Alguns destes objetos têm em seus componentes nomes próprios. Por exemplo, tabelas em suas colunas e índices. Ou ainda é possível criar 'apelidos' (Alias), pelo quais atuam como sinônimos para nomes de tabelas e colunas.
Sintaxe
Identificadores podem estar ou não entre acentos grave (`). Se não estiver deve seguir algumas regras:
- Ele pode conter qualquer caracter alfanumerico, o (_) e o sinal de dolar $;
- O identificador pode iniciar com qualquer caracter citado acima, inclusive números. Contudo, é …
Para explicar a replicação, iremos utilizar o artigo Instalando MySQL 5.5 Parte 2 – Múltiplas instâncias pois iremos precisar de 2 instâncias rodando no nosso servidor.
Iremos ativar os logs binários do nosso servidor, criando um arquivo my_rep.cnf com o seguinte conteúdo:
[mysqld_multi] mysqld = /mysql/mysql/bin/mysqld_safe mysqladmin = /mysql/mysql/bin/mysqladmin [mysqld1] port = 3306 datadir = /mysql/3306/data socket = /mysql/3306/mysql.sock log-error = /mysql/3306/logs/mysqld.log pid-file = /mysql/3306/mysqld.pid server_id = 1 #LOGS log-bin = /mysql/3306/logs/server1_bin.log log-bin-index = /mysql/3306/logs/server1_log-bin.index expire_logs_days = 7 binlog-format = MIXED [mysqld2] port = 3307 datadir = /mysql/3307/data socket = /mysql/3307/mysql.sock log-error = /mysql/3307/logs/mysqld.log pid-file = …[Leia mais]
Hoje vamos falar de uma ferramenta bem bacana do MySQL, o query
cache.
o query cache salva resultados de SELECT’s já executados e que
seus dados brutos não tenham sido alterados tornando assim o
tempo de resposta da query muito mais otimizada, pois ele vai
buscar da memória e não do disco.
Ele pode trabalhar de 3 maneiras diferentes, no nosso my.ini
dentro do grupo [mysqld]:
query_cache_type = 0
Desligado
query_cache_type = 1
Ligado para todas as query’s
query_cache_type = 2
Ligado sobre demanda
Mas qual a melhor maneira de utilizar o query cache?
Tendo em vista que toda a vez que você altera dados em alguma
tabela, ele invalida o cache da mesma, o mais indicado é você
fazer um mapeamento da frequencia de atualização das tabelas e
utilizar o cache para as que não tenham uma frequencia grande a
atualização / inserção, para …
Hoje vamos falar de um assunto muito importante para
administradores de banco de dados, o BACKUP.
Existem várias estratégias de backup, snapshot, dump, dump +
binlog, tudo depende da sua necessidade e do tamanho do seu banco
de dados. Vou explanar um pouco sobre a ferramenta que o próprio
MySQL nos provê, que é o mysqldump, eu indico esta
ferramenta para bancos de dados que possuam até 15gb/20gb, mais
que isso, a probabilidade de você ter problemas para restaurar um
backup e a grande demora, o tornam inviável.
Como o mysqldump funciona? Ele nada mais faz do
criar comandos sql para nossa estrutura e dados e os jogar no
arquivo indicado.
Primeiramente, vou explicar algumas das mais importantes opções
do mysqldump depois, para quem tem o MySQL instalado
em um servidor LINUX, vou ensinar como compactar o dump em tempo
real.
- Fazendo backup de
…
[Leia mais]
Dando continuidade ao nosso post anterior, hoje vamos subir varias
instâncias do MySQL em um mesmo servidor, pratica muito comum
hoje em dia, ao invés de criar uma única instância com 100% dos
recursos do servidor, se divide a carga de QPS (querys por
segundo) entre várias instâncias.
O mysqld_multi irá procurar por grupos
[mysqldN] dentro do nosso arquivo de configurações
my.cnf, onde N é um numero inteiro que
será utilizado posteriormente para referenciarmos qual servidor
vamos dar START STOP ou visualizar o
REPORT
- Já temos a seguinte estrutura em nosso servidor:
|_3306/
|_data/
|_logs/ - Vamos criar a estrutura da instância …
Hoje vou ensinar como instalar um servidor MySQL de forma
simples. Com apenas uma unica instância, na segunda parte deste
artigo, vou ensinar a instalar varias instâncias do MySQL e
controla-las através do mysqld_multi.
Para este tutorial estou utilizando:
VMWare
CentOS 5.6 - 64bits
512MB RAM
40GB DISCO
Instalação sem interface gráfica, somente linha de
comando
Dito isso, vamos ao que realmente interessa:
- Vamos criar a estrutura de diretórios que vamos trabalhar com
nossa instalação do MySQL, para este tutorial vou instalar na
raiz da partição:
cd /
mkdir mysql
cd mysql - Vamos ao site de Downloads do MySQL
e baixar da ultima versão
Community …
Caso você tenha perdido a senha de root do MySQL ou simplesmente não se lembra dela, não se preocupe, segue o passo a passo para você recupera-la:
- Parar o serviço do MySQL caso ele esteja de pé “/etc/init.d/mysql stop”
- Subir o servidor “skipando” a camada responsável por verificar os privilégios de usuários /usr/bin/mysqld_safe –skip-grant-tables & , lembrando que quando você subir o servidor com esta opção, ele irá aceitar que qualquer usuário se conecte ao banco de dados MySQL com acesso TOTAL a TODOS os bancos de dados então, para inibir que outras pessoas se conectem ao banco no período em que você estará fazendo a manutenção sugiro que você utilize o seguinte comando para subir o banco de dados …
Como faz para chamar a stored procedure no MySQL, passando um parâmetro?
Cara, sugestão, como o Mysql não tem integridade podia montar um exemplo com duas tabelas e fazer uma Trigger para ele não deixar excluir da tabela se houvese dependências.
parabéns pela coluna!
« Anterior 10 Mais recentes entradas | Próximo 1 Entradas mais antigos »