forked from vaamonde/ubuntu-1804
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmysql.sh
157 lines (129 loc) · 5.35 KB
/
mysql.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
#Autor: Robson Vaamonde
#Site: www.procedimentosemti.com.br
#Facebook: facebook.com/ProcedimentosEmTI
#Facebook: facebook.com/BoraParaPratica
#YouTube: youtube.com/BoraParaPratica
#Data de criação: 13/02/2019
#Data de atualização: 15/02/2019
#Versão: 0.02
#Instalando o SGBD MySQL (ou MariaDB)
sudo apt update && sudo apt install mysql-server mysql-client mysql-common
sudo apt update && sudo apt install mariadb-server mariadb-client mariadb-common
#Gerenciadores de Banco de Dados MySQL ou MariaDB
sudo apt update && sudo apt install mysql-workbench emma phpmyadmin (precisa do Apache2)
#Aplicando as políticas de segurança no SGDB MySQL (ou MariaDB)
sudo mysql_secure_installation
1. Connecting to MySQL using a blank password (Press y|Y for Yes, any other key for No:) <Enter>
2. New password root: pti@2018 <Enter>
3. Re-enter new password root: pti@2018 <Enter>
4. Remove anonymous users? (Press y|Y for Yes, any other key for No:) y <Enter>
5. Disalow root login remotely (Press y|Y for Yes, any other key for No:) <Enter>
6. Remove test database and access to it? (Press y|Y for Yes, any other key for No:) <Enter>
7. Reload privilege tables now? (Press y|Y for Yes, any other key for No:) y <Enter>
#Verificando o Serviço do SGBD do MySQL
sudo systemctl status mysql
sudo systemctl restart mysql
sudo systemctl stop mysql
sudo systemctl start mysql
#Verificando o Porta de Conexão do SGDB do MySQL
sudo netstat -an | grep 3306
#Acessando o SGBD do MySQL com o usuário root do MySQL
sudo mysql -u root -p
#Verificando os Bancos de Dados Existentes
SHOW DATABASES;
#Criando o nosso Banco de Dados AulaEAD
CREATE DATABASE aulaead;
SHOW DATABASES;
#Criando usuários no SGDB MySQL
CREATE USER 'aulaead' IDENTIFIED BY 'aulaead';
#Aplicando as permissões de acesso ao Banco de Dados AulaEAD
GRANT USAGE ON *.* TO 'aulaead' IDENTIFIED BY 'aulaead';
GRANT ALL PRIVILEGES ON aulaead.* TO 'aulaead';
FLUSH PRIVILEGES;
EXIT
##Acessando o SGBD do MySQL com o usuário AulaEAD
mysql -u aulaead -p
#Utilizando o Banco e Dados AulaEAD
SHOW DATABASES;
USE aulaead;
#Criando a Tabela Alunos e Verificando suas Informações
CREATE TABLE alunos(
matricula VARCHAR(6) NOT NULL,
nome VARCHAR(30) NOT NULL,
cidade VARCHAR(30) NULL,
PRIMARY KEY(matricula));
DESC alunos;
SELECT * FROM alunos;
#Criando a Tabela Cursos e Verificando suas Informações
CREATE TABLE cursos(
codcurso VARCHAR(6) NOT NULL,
nomecurso VARCHAR(30) NOT NULL,
PRIMARY KEY(codcurso));
DESC cursos;
SELECT * FROM cursos;
#Criando a Tabela Matriculas e Verificando suas Informações
CREATE TABLE matriculas(
matricula VARCHAR(6) NOT NULL,
codcurso VARCHAR(6) NOT NULL);
DESC matriculas;
SELECT * FROM matriculas;
#Visualizando as Tabelas Criadas
SHOW TABLES;
#Inserindo dados dentro da Tabela Alunos
INSERT INTO alunos VALUES ('000001', 'Robson Vaamonde', 'Guarulhos');
INSERT INTO alunos VALUES ('000002', 'Leandro Ramos', 'São Paulo');
INSERT INTO alunos VALUES ('000003', 'José de Assis', 'São Paulo');
SELECT * FROM alunos;
#Inserindo dados dentro da Tabela Cursos
INSERT INTO cursos VALUES ('000001', 'Debian Linux');
INSERT INTO cursos VALUES ('000002', 'Ubuntu Linux');
INSERT INTO cursos VALUES ('000003', 'CentOS Linux');
SELECT * FROM cursos;
#Inserindo dados dentro da Tabela Matriculas
INSERT INTO matriculas VALUES ('000001', '000001');
INSERT INTO matriculas VALUES ('000001', '000002');
INSERT INTO matriculas VALUES ('000002', '000003');
INSERT INTO matriculas VALUES ('000003', '000001');
SELECT * FROM matriculas;
#Verificando informações mais detalhes das Tabelas;
SELECT matricula, nome FROM alunos;
SELECT * FROM matriculas WHERE codcurso = '000001';
SELECT * FROM alunos WHERE cidade LIKE 'S%';
SELECT * FROM alunos WHERE nome LIKE '%m%' AND cidade = 'São Paulo';
SELECT COUNT(*) FROM alunos;
#Ordendando as informações das Tabelas
SELECT * FROM cursos ORDER BY codcurso DESC;
SELECT * FROM cursos ORDER BY nomecurso DESC;
#Agrupando os valores das Tabelas
SELECT codcurso FROM matriculas GROUP BY codcurso;
SELECT codcurso, COUNT(*) FROM matriculas GROUP BY codcurso;
#Juntando Tabelas para consultas integradas
SELECT * FROM cursos JOIN matriculas;
SELECT * FROM cursos JOIN matriculas ON cursos.codcurso = matriculas.codcurso;
SELECT cursos.nomecurso, matriculas.matricula FROM cursos JOIN matriculas ON cursos.codcurso = matriculas.codcurso;
SELECT nomecurso, COUNT(*) FROM cursos JOIN matriculas ON cursos.codcurso = matriculas.codcurso GROUP BY nomecurso;
#Alterando uma Tabela e adicionando uma nova Coluna
ALTER TABLE matriculas ADD COLUMN codmatricula VARCHAR(6) NOT NULL FIRST;
DESC matriculas;
SELECT * FROM matriculas;
#Atualizando a Tabela com novos valores em uma Coluna
UPDATE matriculas SET codmatricula='000001' WHERE matricula='000001' AND codcurso='000001';
UPDATE matriculas SET codmatricula='000002' WHERE matricula='000001' AND codcurso='000002';
UPDATE matriculas SET codmatricula='000003' WHERE matricula='000002';
UPDATE matriculas SET codmatricula='000004' WHERE matricula='000003';
SELECT * FROM matriculas;
UPDATE matriculas SET codcurso='000003' WHERE codmatricula='000001';
#Deletando registros em uma Tabela;
SELECT * FROM matriculas;
DELETE FROM matriculas WHERE matricula='000001';
SELECT * FROM matriculas;
#Deletando uma Tabela
SHOW TABLES;
DROP TABLE matriculas;
SHOW TABLES;
DROP TABLE cursos, alunos;
SHOW TABLES;
#Deletando um Banco de Dados
SHOW DATABASES;
DROP DATABASE aulaead;
SHOW DATABASES;