Tutorial MySQL - Prof. Antonio Jr.

Propaganda
UFES – Universidade Federal do Espírito Santo
Centro de Ciências Agrárias
Departamento de Engenharia Rural
Disciplina de Banco de Dados
Tutorial MySQL
Ativando o MySQL
Passo1: Verificar onde (path, caminho) o MySQL está instalado.
Figura 1. Diretório de instalação do MySQL
Nome do Arquivo
MySqld
Mysqld-debug
Mysqld-nt
Mysqld-max
Mysqld-max-nt
Descrição
Trata-se de um arquivo compilado com todas as funcionalidades de
servidor, incluindo o gerenciamento da alocação dinâmica de memória e
suporte das tabelas.
Idêntico ao MySqld; porém inclui checagem e depuração da alocação
dinâmica de memória.
Trata-se de umarquivo compilado (binário) com os mesmos recursos do
mysqld; está otimizado para ser executado nos sistemas operacionais
Windows NT/2000/XP.
Trata-se de mysqld extendido; isto é, possui todas as funcionalidades do
mysqld, com suporte aos tipos de tabelas InnoDb e BDB (Berkeley DB).
Igual ao Mysqld-max, porém otimizado para ser executado nos sistemas
operacionais Windows NT/2000/XP.
Tabela1. Executáveis para SGBD do MySQL.
Os arquivos (tipos de servidores) que podem ser executados como SGBD para o MySQL, por
default encontram-se localizados na pasta Bin no path (caminho) onde foi instalado o MySQL,
como por exemplo: “C:\mysql\bin”.
Prof. Antonio Almeida de Barros Junior
Pág. 1
UFES – Universidade Federal do Espírito Santo
Centro de Ciências Agrárias
Departamento de Engenharia Rural
Disciplina de Banco de Dados
Ao exibir o conteúdo do diretório Bin, encontra-se mais de um tipo de servidor, o qual, deve
ser acionado de acordo com as características de ambiente e recursos, conforme mostra a
Tabela 1.
Passo2: Acionando o SGBD MySQL de forma manual.
Primeiramente cancela-se o processamento de qualquer instância do SGBD que
eventualmente esteja em execução:
Microsoft Windows XP [versão 5.1 2600]
© Copyright 1985-2001 Microsoft Corp.
C:\WINDOWS>cd \mysql
C:\mysql>cd Bin
C:\mysql\bin>mysqladmin –uroot –proot shutdown
C:\mysql\bin>
Onde,
Mysqladmin = software utilitário administrador do banco de dados
-u = parâmetro indicando o usuário (no exemplo: root)
-p = parâmetro indicando a senha (no exemplo: root)
Shutdown = comando para encerrar a execução do MySQL.
Para acionar o servidor MySQL:
C:\WINDOWS>cd \mysql
C:\mysql>cd Bin
C:\mysql\bin>mysqld-max-nt
C:\mysql\bin>
Linguagem SQL para MySQL
O Departamento de Pesquisas da IBM desenvolveu a linguagem SQL como forma de interface
para o sistema de Banco de Dados relacional denominado SYSTEM R, início dos anos 70. Em
1986, a American National Standard Institute (ANSI), publicou o primeiro padrão SQL. A partir
daí, a SQL estabeleceu-se como linguagem padrão de Banco de Dados Relacional.
Extensões procedurais à SQL Padrão
Extensões não procedurais
à SQL Padrão
SQL
Padrão
Figura 2. Extensões da SQL.
A SQL empregada para uso do MySQL, em parte é compatível com o padrão ANSI SQL 92 e,
para alguns casos, o padrão ANSI SQL 99 (stored procedures, views e triggers).
Prof. Antonio Almeida de Barros Junior
Pág. 2
UFES – Universidade Federal do Espírito Santo
Centro de Ciências Agrárias
Departamento de Engenharia Rural
Disciplina de Banco de Dados
Show databases: Mostra os Banco de dados existentes que estão sendo gerenciados pelo
SGBD.
mysql > show databases;
Figura 3. Arquivos de Dados.
mysql > use mysql;
Database changed
mysql >
Com o propósito de servir para a administração realizada pelo SGBD, por default, apenas o
administrador (root) tem acesso aos bancos criados.
mysql – contém tabelas utilizadas para controles de privilégios no acesso aos bancos de dados.
information_schema – contém informações estruturais (esquema) de todos os bancos.
test – é criado vazio (sem nenhuma tabela) e, não contém utilidade para o SGBD.
Prof. Antonio Almeida de Barros Junior
Pág. 3
UFES – Universidade Federal do Espírito Santo
Centro de Ciências Agrárias
Departamento de Engenharia Rural
Disciplina de Banco de Dados
Criando e excluindo um Banco de Dados no MySQL:
Criando tabelas no MySQL:
O MySQL representa cada tabela através de um arquivo com extensão .frm, dentro do
diretório do banco de dados onde ela foi criada.
# The default storage engine that will be used when create new tables when
default-storage-engine=INNODB
Prof. Antonio Almeida de Barros Junior
Pág. 4
UFES – Universidade Federal do Espírito Santo
Centro de Ciências Agrárias
Departamento de Engenharia Rural
Disciplina de Banco de Dados
Visualizando índices de tabelas no MySQL:
Inserindo, Alterando e Excluindo Dados nas tabelas do MySQL
INSERT INTO cliente (CodCliente, Nome) VALUES (1, ‘Antonio’);
INSERT INTO cliente (CodCliente, Nome)
SELECT CodCliente, Nome FROM Cliente_Backup
WHERE Nome LIKE ‘MARIA%’;
INSERT INTO Compra SET CodProduto = 212,
CodFornecedor = (SELECT CodFornecedor FROM Fornecedor
WHERE Nome = ‘Martins’).
Valor = 12.2,
Quantidade = 3;
Agora, vamos considerar que se tenha digitado um arquivo do tipo texto (ascii) de nome
dadosprodutos.sql, cujo conteúdo esteja conforme se mostra a seguir:
USE Aula01;
INSERT INTO Produto (CodProduto, Nome, Estoque) VALUES (1, ‘Prod01’, 0);
INSERT INTO Produto (CodProduto, Nome, Estoque) VALUES (2, ‘Prod02’, 0);
INSERT INTO Produto (CodProduto, Nome, Estoque) VALUES (3, ‘Prod03’, 0);
INSERT INTO Produto (CodProduto, Nome, Estoque) VALUES (4, ‘Prod04’, 0);
INSERT INTO Produto (CodProduto, Nome, Estoque) VALUES (5, ‘Prod05’, 0);
INSERT INTO Produto (CodProduto, Nome, Estoque) VALUES (6, ‘Prod06’, 0);
INSERT INTO Produto (CodProduto, Nome, Estoque) VALUES (7, ‘Prod07’, 0);
INSERT INTO Produto (CodProduto, Nome, Estoque) VALUES (8, ‘Prod08’, 0);
INSERT INTO Produto (CodProduto, Nome, Estoque) VALUES (9, ‘Prod09’, 0);
Cada linha do arquivo dadosprodutos.sql refere-se a um comando INSERT. De posse deste
arquivo, pode-se acionar o monitor mysql.exe, de acordo com o exemplo que segue:
C:\mysql\bin>mysql –ualuno –paluno < dadosprodutos.sql
Prof. Antonio Almeida de Barros Junior
Pág. 5
UFES – Universidade Federal do Espírito Santo
Centro de Ciências Agrárias
Departamento de Engenharia Rural
Disciplina de Banco de Dados
Uma terceira alternativa para se carregar dados para uma tabela, de forma que não se tenha
que executar diversos comandos INSERT é obter os dados a partir de uma fonte externa,
através da execução do comando LOAD.
Considere um arquivo do tipo texto (ascii) de nome dadoscidade.sql, cujo conteúdo esteja
conforme mostra a seguir:
1, ‘Muriaé’, ‘MG’
2, ‘São Chico’, ‘MG’
3, ‘Rio de Janeiro’, ‘RJ’
4, ‘Viçosa’, ‘MG’
5, ‘Vitória’, ‘ES’
6, ‘Alegre’, ‘ES’
Referências
Tonsig, S.L. MySQL Aprendendo na Prática. Editora Ciência Moderna. Rio de Janeiro, 2006.
Prof. Antonio Almeida de Barros Junior
Pág. 6
Download