Os comandos MySQl mais comuns
Segue uma lista dos comandos mais comuns que são utilizados de tempos a tempos.
Para fazer login (de uma shell Unix) utilize -h apenas de necessário.
[mysql dir]/bin/mysql -h hostname -u root -p
Criar uma base de dados em num servidor sql.
create database [databasename];
Listar todas as bases de dados no servidor sql.
show databases;
Mudar de base de dados.
use [db name];
Para ver todas as tabelas da Base de Dados.
show tables;
Para ver os formatos dos campos.
describe [table name];
Para apagar uma base de dados.
drop database [database name];
Para apagar uma tabela.
drop table [table name];
Para ver toda a informação de uma tabela.
SELECT * FROM [table name];
Retornar a informação das colunas e as respectivas colunas da tabela especificada.
show columns from [table name];
Ver campos especificos com o valor “qualquer coisa”.
SELECT * FROM [table name] WHERE [field name] = “qualquer coisa”;
Ver todas as entradas que contenham o nome “Manuel” e o Numero de telefone ‘3444444′.
SELECT * FROM [table name] WHERE name = “Manuel” AND phone_number = ‘3444444′;
Ver todas as entradas que contenham o nome “José” e o número de telefone ‘3444444′ ordenadas pelo campo do telefone.
SELECT * FROM [table name] WHERE name != “José” AND phone_number = ‘3444444′ order by phone_number;
Ver todas as entradas que comecem pelas letras ‘joão’ e pelo telefone ‘3444444′.
SELECT * FROM [table name] WHERE name like “joão%” AND phone_number = ‘3444444′;
Utilizar uma expressão regular para encontrar entradas. Utilizar “REGEXP BINARY” para forçar case-sensitivity. Neste caso procura qualquer entrada começada por a.
SELECT * FROM [table name] WHERE rec RLIKE “^a$”;
Mostrar entradas únicas.
SELECT DISTINCT [column name] FROM [table name];
Mostrar entradas seleccionadas por ordem ascendente (asc) ou descentente (desc).
SELECT [col1],[col2] FROM [table name] ORDER BY [col2] DESC;
Retorna o número de colunas.
SELECT COUNT(*) FROM [table name];
Soma as colunas.
SELECT SUM(*) FROM [table name];
Juntar as tabelas em colunas comuns.
select lookup.illustrationid, lookup.personid,person.birthday from lookup
left join person on lookup.personid=person.personid=statement to join birthday in person table with primary illustration id;
Mudar para a mysql db. Criar um novo utilizador.
INSERT INTO [table name] (Host,User,Password) VALUES(’%’,’user’,PASSWORD(’password’));
Mudar a password. (de uma consola unix).
[mysql dir]/bin/mysqladmin -u root -h hostname.blah.org -p password ‘new-password’
Mudar uma password de um utilizador.(da linha de comandos MySQL).
SET PASSWORD FOR ‘user’@’hostname’ = PASSWORD(’passwordhere’);
Autorizar o utilizador “zé” a ligar-se ao servidor do host local utilizando a password “passwd”
grant usage on *.* to zé@localhost identified by ‘passwd’;
Mudar para uma mysql db.Dar previlégios a um utilizador sobre uma db.
INSERT INTO [table name] (Host,Db,User,Select_priv,Insert_priv,Update_priv,Delete_priv,Create_priv,Drop_priv) VALUES (’%’,’databasename’,’username’,’Y’,’Y’,’Y’,’Y’,’Y’,’N’);
or
grant all privileges on databasename.* to username@localhost;
Para actualizar a informação de uma tabela.
UPDATE [table name] SET Select_priv = ‘Y’,Insert_priv = ‘Y’,Update_priv = ‘Y’ where [field name] = ‘user’;
Apagar linhas de uma tabela.
DELETE from [table name] where [field name] = ‘whatever’;
Atualizar premissões e previlégios de uma base de dados.
FLUSH PRIVILEGES;
Apagar uma Coluna.
alter table [table name] drop column [column name];
Adicionar uma coluna a uma Base de Dados.
alter table [table name] add column [new column name] varchar (20);
Mudar o nome de uma tabela.
alter table [table name] change [old column name] [new column name] varchar (50);
Criar uma única coluna.
alter table [table name] add unique ([column name]);
Criar uma coluna maior.
alter table [table name] modify [column name] VARCHAR(3);
Apagar unica de uma tabela.
alter table [table name] drop index [colmn name];
Carregar um ficheiro CSV para uma tabela.
LOAD DATA INFILE ‘/tmp/filename.csv’ replace INTO TABLE [table name] FIELDS TERMINATED BY ‘,’ LINES TERMINATED BY ‘\n’ (field1,field2,field3);
Fazer um backup de todas as bases de dados.
[mysql dir]/bin/mysqldump -u root -ppassword –opt >/tmp/alldatabases.sql
Fazer um backup de apenas uma base de dados.
[mysql dir]/bin/mysqldump -u username -ppassword –databases databasename >/tmp/databasename.sql
Fazer o backup de uma tabela de uma base de dados.
[mysql dir]/bin/mysqldump -c -u username -ppassword databasename tablename > /tmp/databasename.tablename.sql
Restaurar uma base de dados (ou tabela) de um backup.
[mysql dir]/bin/mysql -u username -ppassword databasename < /tmp/databasename.sql
Criar Tabela Exemplo 1.
CREATE TABLE [table name] (firstname VARCHAR(20), middleinitial VARCHAR(3), lastname VARCHAR(35),suffix VARCHAR(3),officeid VARCHAR(10),userid VARCHAR(15),username VARCHAR(8),email VARCHAR(35),phone VARCHAR(25), groups
VARCHAR(15),datestamp DATE,timestamp time,pgpemail VARCHAR(255));
Criar Tabela Exemplo 2.
create table [table name] (personid int(50) not null auto_increment primary key,firstname varchar(35),middlename varchar(50),lastnamevarchar(50) default ‘bato’);
Esse artigo foi uma introdução aos comandos básicos do MySQL, nos próximos posts vamos explicar melhor cada um deles.
Fonte: Link
0 comentários:
Postar um comentário