Este artículo explica MySQL y cómo administrar usuarios y bases de datos en la herramienta.
¿Qué es MySQL?
Las bases de datos son colecciones organizadas de datos. Puede usarlos para almacenar datos puros como información de tarjetas de crédito, identificaciones de productos, precios, listas de cosas, etc. Sin embargo, no almacenaría cosas más complejas como imágenes, archivos o documentos. Si ayuda, es un poco como Microsoft®, Excel®, donde solo copia los datos sin procesar para almacenarlos, procesarlos o recuperarlos más tarde. Y MySQL® es un tipo de base de datos Linux® muy utilizado.
MySQL versus MariaDB
Es posible que tenga instalado MySQL, pero parece que se llama MariaDB®. Cuando Oracle® adquirió MySQL en 2010, los fundadores originales crearon MariaDB como un reemplazo similar en caso de que Oracle descontinuara MySQL. Entonces, MySQL y MariaDB son en gran medida iguales e intercambiables. La información de este artículo se aplica a ambos.
Verificar la versión
Ejecute el siguiente comando para comprobar la versión de su base de datos:
# mysql -v
Iniciar sesión
Inicie sesión en su base de datos utilizando uno de los siguientes métodos:
Método 1:SSH como root, luego inicie sesión en MySQL
Si esta ya es la opción predeterminada, considere dejarla como está. De lo contrario, cree el siguiente archivo con el editor de texto elegido:
# vim /root/.my.cnf
[client]
user=root
password=<password>
O si lo prefiere, puede crearlo así con:
# echo -e "\n[client]\nuser=root\npassword=<PASSWORD>" >> /root/.my.cnf
El SecureShell (SSH) en su servidor como root
e inicie sesión en MySQL ejecutando el siguiente comando:
# mysql
Método 2:SSH al servidor, luego inicie sesión en MySQL
Si ingresa SSH a su servidor primero, su usuario se conecta a MySQL desde el localhost
porque ya estás en la máquina con MySQL.
Inicie sesión desde localhost ejecutando el siguiente comando:
# mysql -u <USER> -p
Método 3:Conéctese directamente a MySQL
Si desea conectarse directamente a MySQL desde su computadora, necesita el nombre de host o la dirección IP del servidor MySQL. Luego, ejecute el siguiente comando:
# mysql -h <HOSTNAME_OR_IP> -u <USER> -p
Comodines en MySQL
En el software, un comodín es una especie de marcador de posición representado con un asterisco (*). Este *
puede significar cualquier combinación de letras/números/símbolos, por lo que podría representar '12345' como 1* or *3* or *5
. Por ejemplo, si desea encontrar un nombre que comience con la letra M, puede buscar M*
.
En MySQL, el carácter comodín es un símbolo de porcentaje (%).
Por ejemplo, ejecute el siguiente comando para buscar todas las bases de datos que terminen con la palabra esquema :
> show databases like "%schema";
Comandos comunes de MySQL
Estos son algunos comandos comunes de MySQL:
Listar bases de datos:
> show databases;
Crear una base de datos:
> create database <DATABASE>;
Eliminar una base de datos:
> drop database <DATABASE>;
Comandos comunes relacionados con los usuarios
Todos los usuarios se conectan desde algún lugar. Si los hosts se muestran como localhost , primero se conectaron al servidor y luego a MySQL. Si se muestra como una dirección IP, están conectados directamente a MySQL.
Mostrar usuarios de base de datos:
> select user, host from mysql.user;
Mostrar usuarios de base de datos y contraseñas cifradas:
> select user, host, password from mysql.user;
Crear usuario con permisos completos:
> grant all on *.* to sher@localhost identified by "sdF5";
Esto puede ser para localhost, dirección IP o % en todas partes (que no recomendamos):
> grant all on *.* to [email protected] identified by "sdF5";
Renombrar usuario o cambiar host:
> rename user user@ip1 to user@ip2;
Actualizar:
> flush privileges;
Comandos de privilegios, concesiones y permisos
En MySQL, no se aplican las reglas habituales de lectura, escritura y ejecución basadas en Linux. En su lugar, asigna permisos a los usuarios como privilegios o subvenciones , que es mucho más granular y específico. Las siguientes secciones muestran algunos ejemplos:
Mostrar concesiones de usuario:
> show grants for '<user>'@<localhost/IP>;
Añadir permisos de usuario:
> GRANT SELECT,INSERT,UPDATE on <database>.* to <user>@<localhost/IP>;
Eliminar todas las concesiones de usuarios:
> revoke ALL on *.* from <user>@<localhost/IP>;
Cree una base de datos y agregue el usuario (leer/escribir significa todo):
> create database dbase;
> grant all on dbase.* to <user>@<localhost/IP> identified by 'passwd';
Subvenciones
La siguiente lista muestra algunas de las concesiones comunes de MySQL:
- TODOS LOS PRIVILEGIOS :Todos los accesos (a una base de datos específica / todo)
- CREAR :Crear nuevas tablas/DBs
- SOLTAR :Eliminar tablas / DBs
- ELIMINAR :Eliminar filas de las tablas
- INSERTAR :Insertar filas en tablas
- SELECCIONAR :utilice el comando Seleccionar para leer las bases de datos (solo lectura)
- ACTUALIZAR :Actualizar filas de la tabla
- USO :Sin privilegios, por defecto
- OPCIÓN DE CONCESIÓN :otorgar o eliminar los privilegios de otros usuarios
- CRUD :Crear, Leer, Actualizar, Eliminar
Use la pestaña Comentarios para hacer cualquier comentario o hacer preguntas. También puede iniciar una conversación con nosotros.