-
Notifications
You must be signed in to change notification settings - Fork 13
/
Copy pathMariaDB.txt
executable file
·344 lines (207 loc) · 7.6 KB
/
MariaDB.txt
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
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
===================
Guía MariaDB by dM
===================
Nota:
-Usaremos $ para describir los comandos que se usaran con usuario regular.
-Usaremos # para describir los comandos que se usaran con superusuario.
===========
Instalación
===========
Actualizar los repositorios
# apt-get update
Instalar MariaDB
# apt-get install mariadb-server
Luego de la instalación nos pedirá que escribamos una contraseña para el usuario
root de mariadb.
-----
Chequear la instalación con:
$ mysql -V
mysql Ver 15.1 Distrib 10.0.30-MariaDB, for debian-linux-gnu (x86_64) using
eadline 5.2
================================
Acceder a la consola de MariaDB
================================
Nos logeamos en MariaDB using el usuario root de MariaDB, nos pedirá el password
del usuario root.
$ mysql -u root -p
ó
$ sudo mysql -u root
Nos pedirá el password del usuario que tengamos configurado con sudo.
-----
Para salir de la consola de MariaDB usamos:
> exit
> \q
Ctrl + D
-----
Para ver los comandos disponibles
> \h
==================
Gestión de MariaDB
==================
Iniciar el servidor de MariaDB
$ sudo systemctl start mariadb
-----
Detener el servidor de MariaDB
$ sudo systemctl stop mariadb
-----
Reiniciar el servidor de MariaDB
$ sudo systemctl restart mariadb
-----
Chequear el estaus del servidor de MariaDB
$ sudo systemctl status mariadb
===================
Gestión de usuarios
===================
Crear un usuario y asignarle el password.
> CREATE USER 'user_name' IDENTIFIED BY 'user123456';
-----
Crea un nuevo usuario con host localhost
> CREATE USER 'username'@'localhost' IDENTIFIED BY 'tu_contraseña';
-----
Eliminar un usuario creado.
> DROP USER user_name;
-----
Eliminar un usuario creado especificando el host.
> DROP USER 'admin'@'localhost';
-----
Mostrar la lista de usuarios con todos sus campos
> SELECT * FROM mysql.user;
-----
Mostrar la lista de usuarios con campos relevantes
> SELECT host, USER, password FROM mysql.user;
=========================
Gestión de bases de datos
=========================
Crear una base de datos y asignarele un dueño
> CREATE DATABASE db_name;
Sobre la base de datos recién creada le asignamos el usuario:
> GRANT ALL PRIVILEGES ON db_name.* TO 'user_name'@'localhost';
Refrescamos el esquema de las tablas de MySQL.
> FLUSH PRIVILEGES;
-----
Listas las bases de datos disponibles.
> show databases;
-----
Listas las bases de datos disponibles con sus dueños.
> SELECT Db AS `Database`, User AS `Owner`, Host FROM mysql.db WHERE User != '';
-----
Listar todas las tablas de una base de datos:
> SHOW FULL TABLES FROM mi_base_de_datos;
-----
Listar todas las tablas de una base de datos ya seleccionada:
> USE test_db;
Database changed
MariaDB [test_db]> SHOW FULL TABLES;
-----
Borrar una base de datos específica:
> DROP DATABASE db_name;
Si la base de datos no existe va a dar error, podemos usar el parámeteo IF
EXISTS para que no de error.
> DROP DATABASE IF EXISTS db_name;
-----
Ver todos los campos de una tabla, debe estar selecciona la base de datos, por
ejemplo test_db:
> DESCRIBE nombre_de_la_tabla;
Ejemplo:
MariaDB [test_db]> DESCRIBE users;
+----------+-------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+----------+-------------+------+-----+---------+----------------+
| id | int(11) | NO | PRI | NULL | auto_increment |
| username | varchar(50) | NO | | NULL | |
Tambien podermos usar este otro comando:
> SHOW COLUMNS FROM nombre_de_la_tabla;
Ejemplo:
MariaDB [test_db]> SHOW COLUMNS FROM users;
==============================
Desinstalar e instalar MariaDB
==============================
$ sudo apt purge mariadb-server
$ sudo rm -rf /var/lib/mysql/
$ sudo apt-get autoremove --purge mariadb-server
$ sudo apt install mariadb-server
========================================================================
ERROR 1396 (HY000): Operation CREATE USER failed for 'admin'@'localhost'
========================================================================
> drop user admin@localhost;
> flush privileges;
> CREATE USER 'user'@'localhost' IDENTIFIED BY 'admin_password';
======================================
Hacer un respaldo de una base de datos
======================================
$ mysqldump -u nombre_de_usuario -p nombre_base_de_datos > nombredelarchivo.sql
===========================
Restaurar una base de datos
===========================
$ mysql -u usuario -p nombre_base_de_datos < nombre_base_de_datos.sql
====================================
Crear una tabla en una base de datos
====================================
1- Lo primero que debemos hacer es seleccionar la base de datos con la cual
vamos a trabajar, hacemos uso de la directiva USE, supongamos que tenemos una
base de datos llamada test_db:
> USE test_db;
Database changed
Al seleccionar a test_db el prompt nos debe quedar así:
MariaDB [test_db]>
2- Ahora vamos a crear la tabla users dentro de test_db:
MariaDB [test_db]> CREATE TABLE users;
ERROR 1113 (42000): A table must have at least 1 column
Nos da un error porque al momento de crear una tabla esta debe contener al menos
un campo o columna, entonces corregimos la sentencia para agregar los campos id
y username:
MariaDB [test_db]> CREATE TABLE users (id INT AUTO_INCREMENT PRIMARY KEY, username VARCHAR(50) NOT NULL);
Query OK, 0 rows affected (0,015 sec)
3- Ahora chequeamos que se haya creado la tabla con:
MariaDB [test_db]> SHOW FULL TABLES;
+-------------------+------------+
| Tables_in_test_db | Table_type |
+-------------------+------------+
| users | BASE TABLE |
+-------------------+------------+
1 row in set (0,001 sec)
==================================
Agregar un nuevo campo a una tabla
==================================
La base de datos debe estar seleccionada. En este ejemplo vamos a agregar el
campo age de tipo int y que por defecto sea null.
MariaDB [test_db]> ALTER TABLE users ADD COLUMN age INT DEFAULT NULL;
Query OK, 0 rows affected (0,007 sec)
Records: 0 Duplicates: 0 Warnings: 0
MariaDB [test_db]> DESCRIBE users;
+----------+-------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+----------+-------------+------+-----+---------+----------------+
| id | int(11) | NO | PRI | NULL | auto_increment |
| username | varchar(50) | NO | | NULL | |
| age | int(11) | YES | | NULL | |
+----------+-------------+------+-----+---------+----------------+
3 rows in set (0,001 sec)
==============================
Eliminar un campo de una tabla
==============================
La base de datos debe estar seleccionada:
> ALTER TABLE nombre_de_la_tabla DROP COLUMN nombre_del_campo;
Ejemplo:
> ALTER TABLE users DROP COLUMN age;
============================================
Insertar información en un campo de la tabla
============================================
La base de datos debe estar seleccionada:
> INSERT INTO nombre_de_la_tabla (nombre_del_campo) VALUES ('dato_a_guardar');
Ejemplo:
> INSERT INTO users (username) VALUES ('pedroperez');
================================
Insertar un registro en la tabla
================================
Ahora vamos a insetar información en varios campos a la vez:
MariaDB [test_db]> INSERT INTO users (username, age) VALUES ('pedroperez', 20);
=====================
Error MySQL extension
=====================
Your PHP installation appears to be missing the MySQL extension which is required by WordPress.
$ sudo apt install php-mysql
$ sudo systemctl restart apache2
Fuente
======
ChatGPT