LinuxParty
Lo más probable es que no vaya a realizar muchas operaciones manuales con la base de datos MariaDB, tales como la creación de tablas o añadir datos, porque seguramente usará otros programas que utilizan backends de bases de datos. Los siguientes comandos le ayudarán, y muestran cómo recuperar una contraseña de root, ver lo que está en su base de datos, cómo conseguir ayuda, y cómo buscar una cadena de texto en particular.
Password de Root perdida
Cuando instala MariaDB en Linux usted tiene la opción de crear una contraseña de root. Es probable que enseguida la olvide. No se preocupe, porque mientras tenga acceso de root Linux podrá recuperar para MariaDB.
Primero detenga su base de datos si está corriendo. En Red Hat Linux, CentOS, y Fedora use el comando systemctl:
$ sudo systemctl stop mariadb.service
O
service mariadb stop
o
service mysqld stop
En Debian, Ubuntu, y Linux Mint todavía podrá usar el comando service:
$ sudo service mysql stop * Stopping MariaDB database server mysqld
Ahora, reinicie MariaDB con el comando mysqld_safe, que es la forma más segura de iniciar MariaDB. --skip-grant-tables inicia el servidor sin restricciones de usuario, por lo que es muy abierta:
$ sudo mysqld_safe --skip-grant-tables --skip-networking & [1] 11278 carla@studio:~/Documents/1articles/linuxcom$ 141029 19:37:57 mysqld_safe Logging to syslog. 141029 19:37:57 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
La opción --skip-networking previene que cualquiera a escondidas pueda conectarse. Obviamente, no utilice esto si está iniciando una sesión remota. Ahora se puede restablecer la contraseña de root utilizando la shell de mysql. Inicia sesión para MariaDB, seleccione la base de datos mysql, restablezca la contraseña de root, y salga de inmediato:
$ mysql -u root Welcome to the MariaDB monitor. Commands end with ; or \g. Your MariaDB connection id is 1 Server version: 5.5.39-MariaDB-0ubuntu0.14.04.1 (Ubuntu) Copyright (c) 2000, 2014, Oracle, Monty Program Ab and others. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. MariaDB [(none)]> use mysql; Reading table information for completion of table and column names You can turn off this feature to get a quicker startup with -A Database changed MariaDB [mysql]> update user set password=PASSWORD("new-password") where User='root'; Query OK, 4 rows affected (0.00 sec) Rows matched: 4 Changed: 4 Warnings: 0 MariaDB [mysql]> flush privileges; Query OK, 0 rows affected (0.00 sec) MariaDB [mysql]> exit Bye
Ahora intente iniciar sesión con tu nueva contraseña:
$ mysql -u root -p Enter password: Welcome to the MariaDB monitor. Commands end with ; or \g. Your MariaDB connection id is 2 Server version: 5.5.39-MariaDB-0ubuntu0.14.04.1 (Ubuntu)
Utilice esta sola línea para cambiar la contraseña de cualquier usuario sin necesidad de acceder a la shell de MariaDB:
$ mysqladmin -u carla -p 'old-password' password 'new-password'
Debian's Back Door
Debian almacena la contraseña de texto para su sistema MariaDB usuario en /etc/mysql/debian.cnf:
# Automatically generated for Debian scripts. DO NOT TOUCH! [client] host = localhost user = debian-sys-maint password = LofpsiQCKOcGzoqJ
Puede iniciar sesión con este usuario y hacer lo que quiera, incluyendo restablecer la contraseña de root.
Viendo ¿Qué hay dentro?
Tenga cuidado cuando usted está haciendo monerías con su base de datos, debido a que algunas cosas tienen que estar ahí, como ciertos usuarios del sistema. Entrar, seleccione el mysql base de datos, y muestra una lista de sus usuarios de bases de datos:
$ mysql -u root -p password: MariaDB [(none)]> use mysql; Database changed MariaDB [mysql]> SELECT user, host, password FROM user; +------------------+------------+---------------+ | user | host | password | +------------------+------------+---------------+ | root | localhost | *F6FE8C583C17 | | root | 127.0.0.1 | *F6FE8C583C17 | | root | ::1 | *F6FE8C583C17 | | debian-sys-maint | localhost | *21B2FE94870C | 5 rows in set (0.00 sec)
Si no ha configurado una contraseña de root entonces, el campo de la contraseña de root estará vacía. A diferencia de la contraseña debian-sys-maint en el archivo de configuración, todos estos están encriptados. ¿Por qué tantos usuarios root? Debido a que MariaDB se preocupa como y desde dónde los usuarios se conectan.
Puedes ver todas las bases de datos:
MariaDB [mysql]> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | owncloud | | redbooks | | bluebooks | | performance_schema | +--------------------+ 4 rows in set (0.00 sec)
information_schema, mysql , y performance_schema son todas las bases de datos MariaDB internas. No borre o las cambie, o tendrás problemas. Usted puede mirar en su interior y ver todos sus nombres de tabla:
MariaDB [mysql]> show tables; +---------------------------+ | Tables_in_mysql | +---------------------------+ | columns_priv | | db | | event | | func | | general_log |
Usted puede ver las estructuras de la tabla, mostrar todas las columnas de las tablas y todas las variables que pueden asignarse a los usuarios::
MariaDB [mysql]> describe user; +------------+------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +------------+------------+------+-----+---------+-------+ | Host | char(60) | NO | PRI | | | | User | char(16) | NO | PRI | | | | Password | char(41) | NO | | | | | Select_priv| enum | NO | | N | | | Insert_priv| enum | NO | | N | | | Update_priv| enum | NO | | N | |
¿Qué pasa si usted quiere ver los datos de la tabla? Este ejemplo muestra toda ella;
MariaDB [mysql]> select * from user;
Ahora vamos a seleccionar sólo unos campos de lo que queremos ver.
MariaDB [mysql]> SELECT user, super_priv FROM user; +------------------+------------+ | user | super_priv | +------------------+------------+ | root | Y | | root | Y | | root | Y | | root | Y | | debian-sys-maint | Y | | carla | Y | | layla | N | | toshi | N |
Buscando MariaDB cadenas de texto arbitrarias
Una manera de buscar un poco arbitraria datos en sus bases de datos es convirtiéndola en un archivo de texto y, a continuación, buscar el texto. Este ejemplo da formato al archivo de volcado con saltos de línea, por lo que es legible se puede usar grep:
$ mysqldump -u user -p --extended-insert=false --all-databases > dbdump.txt
Por supuesto, usted puede volcar de las bases de datos seleccionadas:
$ mysqldump -u user -p --extended-insert=false --databases db2 db3 > dbdump.txt
Entonces puede usar grep sobre el volcado con la cadena de búsqueda, al igual que busca en un archivo.
$ grep -i pinecones dbdump.txt INSERT INTO `forest` VALUES (4,'PINECONE'); INSERT INTO `forest` VALUES (11,'PINECONES'); INSERT INTO `mountain` VALUES (21,'PINECONE');
Estas son ayudas de contenido.
MariaDB [mysql]> help contents You asked for help about help category: "Contents" For more information, type 'help ', where is one of the following categories: Account Management Administration Compound Statements Data Definition Data Manipulation
MySQL no va a desaparecer, pero MariaDB está convirtiendo rápidamente en la base de datos por defecto en las distribuciones de Linux, y los aficionados no están reemplazando Oracle MySQL tan rápido como pueden. Por favor, visite MariaDB.com leer mucho más buena documentación, y pasar de MySQL debería ser de utilidad para los usuarios de MySQL que quieren hacer el cambio.
-
Bases de Datos
- Cómo hacer copias de seguridad y restaurar MySQL/MariaDB y PostgreSQL con las herramientas 'Automysqlbackup' y 'Autopostgresqlbackup'
- La última versión de MySQL es decepcionante, dicen algunos expertos en bases de datos
- Cómo instalar MongoDB en AlmaLinux 9 con ejemplos de uso
- Cómo instalar PostgreSQL 16 en distribuciones basadas en RHEL, AlmaLinux, RockyLinux y Fedora
- Cómo instalar PhpMyAdmin con Apache en sistemas RHEL, Alma Linux, Rocky Linux, Centos y Fedora
- Cómo hacer una copia de seguridad y restaurar una base de datos PostgreSQL en Linux
- Cómo instalar phpPgAdmin y PostgreSQL en CentOS, AlmaLinux, RHEL, RockyLinux y similares
- 20 comandos mysqladmin para la administración de bases de datos MYSQL/MariaDB
- Copiar y restaurar copias de seguridad de MySQL / MariaDB para la administración de bases de datos
- Crear Copias de Seguridad (Backups) de MariaDB o MySQL Automáticas con AutoMySQLBackup
- Grafana, software para análisis y supervisión
- Cómo configurar la replicación MariaDB (Maestro-Esclavo) en CentOS / RHEL y Debian
- Arrancar al inicio MySQL / MariaDB con Linux.
- Conocer que IPs están conectados a MySQL haciendo consultas a la base de datos.
- MariaDB, guía práctica para Administradores Linux