En el enlace siguiente se pueden encontrar las sugerencias más acertadas para dar solución a los errores de formato de fecha vacía en las consultas:
Etiqueta: mySQL
Instalación y configuración de phpmyadmin.
Ejecutar los siguientes comandos para la instalación:
-Actualización de lista de repositorios:
sudo apt update
-Instalación de phpmyadmin:
1 |
sudo apt install phpmyadmin php-mbstring php-gettext |
En este paso se debe elegir apache2 como servidor web marcándolo con la tecla de espaciado para que quedé fijado con un asterisco.
Luego se debe aceptar la configuración de la base de datos de phpmyadmin con dbconfig-common.
-Habilitar la extensión de php mbstring con:
sudo phpenmod mbstring
-Reiniciar el servidor:
1 |
sudo systemctl restart apache2 |
Si aún no se ha configurado el usuario root de mysql, se ejecutan los comandos siguientes:
-Acceso al cliente mysql:
sudo mysql
-Verificar las cuentas de los usuarios actuales:
SELECT user,authentication_string,plugin,host FROM mysql.user;
-Si el usuario root tiene fijado ‘auth_socket’ como método de autenticación, se ejecuta:
1 |
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password'; |
Donde password es la nueva contraseña
-Guardar cambios:
FLUSH PRIVILEGES;
-Se verifica nuevamente el método de autenticación del usuario root con:
SELECT user,authentication_string,plugin,host FROM mysql.user;
Si al momento de realizar la instalación no marcamos correctamente el servidor apache2, podemos reconfigurarlo con:
sudo dpkg-reconfigure phpmyadmin
Esto nos permite configurar nuevamente phpmyadmin. Hay que recordar marcar el servidor apache2 pulsando la tecla de espacio para que le coloque un asterisco.
En caso de tener que desinstalar phpmyadmin completamente se puede seguir esta guía:
Desinstalar phpmyadmin
Para desinstalar unicamente phpmyadmin en Ubuntu 16.04 (Xenial Xerus) ejecutar los siguientes comandos:
1 |
sudo apt-get remove phpmyadmin |
Desinstalar phpmyadmin e los paquetes dependientes
Para desinstalar el paquete phpmyadmin y todos los paquetes dependientes que ya no sean necesarios en Ubuntu Xenial.
1 |
sudo apt-get remove --auto-remove phpmyadmin |
Purga phpmyadmin
Usted también puede eliminar la información de configuración del phpmyadmin en Ubuntu Xenial ejecutar lo siguiente comando:
1 |
sudo apt-get purge phpmyadmin |
Para eliminar la información de configuración del phpmyadmin y todos los paquetes dependientes en Ubuntu Xenial ejecutar:
1 |
sudo apt-get purge --auto-remove phpmyadmin |
https://www.howtoinstall.co/es/ubuntu/xenial/phpmyadmin?action=remove
Cómo configurar la replicación de esclavo maestro en MySQL
La replicación de MySQL es un proceso que le permite mantener fácilmente múltiples copias de los datos de MySQL al copiarlos automáticamente de una base de datos maestra a una base de datos esclava. Esto puede ser útil por muchas razones, incluida la configuración de una copia de seguridad de los datos, una forma de analizarlos sin usar la base de datos principal, o simplemente como un medio para escalar.
Este tutorial cubrirá un ejemplo muy simple de la replicación de mysql: un maestro enviará información a un solo esclavo. Para que el proceso funcione, necesitará dos direcciones IP: una del servidor maestro y una del esclavo.
Este tutorial utilizará las siguientes direcciones IP:
12.34.56.789- Base de datos maestra 172.16.4.16 ip para la prueba
12.23.34.456- Base de datos de esclavos 172.16.4.42 ip para la prueba
Configuración
En este artículo se supone que tiene un usuario con privilegios de sudo y tiene instalado MySQL. Si no tiene mysql, puede instalarlo con este comando:
1 |
sudo apt-get install mysql-server mysql-client |
Paso uno: configurar la base de datos maestra
Abra el archivo de configuración de mysql en el servidor maestro.
1 |
sudo nano /etc/mysql/my.cnf |
o
1 |
nano /etc/mysql/mysql.conf.d/mysqld.cnf |
Una vez dentro de ese archivo, necesitamos hacer algunos cambios.
El primer paso es encontrar la sección que se ve así, vinculando el servidor al host local:
bind-address = 127.0.0.1
Reemplace la dirección IP estándar con la dirección IP del servidor.
bind-address = 12.34.56.789
El siguiente cambio de configuración se refiere a la ID del servidor, ubicada en la sección [mysqld]. Puede elegir cualquier número para este punto (puede ser más fácil comenzar con 1), pero el número debe ser único y no puede coincidir con ningún otro ID de servidor en su grupo de replicación. Voy a seguir adelante y llamaré a éste 1.
Asegúrate de que esta línea no tenga comentarios.
server-id = 1
Pasa a la línea log_bin. Aquí es donde se guardan los detalles reales de la replicación. El esclavo va a copiar todos los cambios que están registrados en el registro. Para este paso, simplemente necesitamos descomentar la línea que hace referencia a log_bin:
log_bin = /var/log/mysql/mysql-bin.log
Finalmente, debemos designar la base de datos que se replicará en el servidor esclavo. Puede
incluir más de una base de datos repitiendo esta línea para todas las bases de datos que necesitará.
binlog_do_db = newdatabase
Después de realizar todos los cambios, siga adelante, guarde y salga del archivo de configuración.
Actualizar MySQL.
1 |
sudo service mysql restart |
Los próximos pasos se llevarán a cabo en el shell de MySQL, en sí.
Abre el shell de MySQL.
1 |
mysql -u root –p o |
1 |
mysql -h localhost -u root -p |
Necesitamos otorgar privilegios al esclavo. Puedes usar esta línea para nombrar a tu esclavo y configurar su contraseña. El comando debe estar en este formato:
1 |
GRANT REPLICATION SLAVE ON *.* TO 'slave_user'@'%' IDENTIFIED BY 'password'; |
1 |
FLUSH PRIVILEGES; |
La siguiente parte es un poco meticulosa. Para llevar a cabo la tarea, deberá abrir una nueva ventana o pestaña, además de la que ya está usando unos pocos pasos en la línea
En su pestaña actual, cambie a «newdatabase».
USE newdatabase;
A continuación, bloquee la base de datos para evitar nuevos cambios:
1 |
FLUSH TABLES WITH READ LOCK; |
Luego escribe:
1 |
SHOW MASTER STATUS; |
Verás una tabla que debería verse así:
1 2 3 4 5 6 7 8 9 10 11 12 13 |
mysql> SHOW MASTER STATUS; +------------------+----------+--------------+------------------+ | File | Position | Binlog_Do_DB | Binlog_Ignore_DB | +------------------+----------+--------------+------------------+ | mysql-bin.000001 | 107 | newdatabase | | +------------------+----------+--------------+------------------+ 1 row in set (0.00 sec) |
Esta es la posición desde la cual la base de datos esclava comenzará a replicarse. Anota estos números, te serán útiles más adelante.
Si realiza cambios nuevos en la misma ventana, la base de datos se desbloqueará automáticamente. Por este motivo, debe abrir la nueva pestaña o ventana y continuar con los siguientes pasos allí.
Continuando con la base de datos aún bloqueada, exporte su base de datos usando mysqldump en la nueva ventana (asegúrese de escribir este comando en el shell bash, no en MySQL).
1 |
mysqldump -u root -p --opt newdatabase > newdatabase.sql |
Ahora, volviendo a su ventana original, desbloquee las bases de datos (haciéndolas que se puedan escribir nuevamente). Terminar saliendo de la shell.
UNLOCK TABLES;
QUIT;
Ahora que ha terminado con la configuración de la base de datos maestra.
Paso dos: configurar la base de datos de esclavos
Una vez que haya configurado la base de datos maestra. Puede dejarlo de lado por un tiempo, y ahora comenzaremos a configurar la base de datos esclava.
Inicie sesión en su servidor esclavo, abra el shell de MySQL y cree la nueva base de datos que replicará desde el maestro (luego salga):
CREATE DATABASE newdatabase;
EXIT;
Importe la base de datos que exportó previamente desde la base de datos maestra.
mysql -u root -p newdatabase < /path/to/newdatabase.sql
Ahora necesitamos configurar el esclavo de la misma manera que hicimos el maestro:
1 |
sudo nano /etc/mysql/my.cnf |
Tenemos que asegurarnos de que tenemos algunas cosas configuradas. El primero es el servidor-id. Este número, como se mencionó anteriormente, debe ser único. Ya que está configurado en el valor predeterminado (aún 1), asegúrese de cambiarlo, es algo diferente.
server-id = 2
Después de eso, asegúrese de que tiene los siguientes tres criterios debidamente llenados:
1 2 3 4 5 |
relay-log = /var/log/mysql/mysql-relay-bin.log log_bin = /var/log/mysql/mysql-bin.log binlog_do_db = newdatabase |
Deberá agregar en la línea relay-log: no está ahí por defecto. Una vez que haya realizado todos los cambios necesarios, guarde y salga del archivo de configuración esclavo.
Reinicie MySQL una vez más:
1 |
sudo service mysql restart |
El siguiente paso es habilitar la replicación desde el shell de MySQL.
Abra el shell de MySQL una vez más y escriba los siguientes detalles, reemplazando los valores para que coincidan con su información:
1 2 3 |
CHANGE MASTER TO MASTER_HOST='12.34.56.789',MASTER_USER='slave_user', MASTER_PASSWORD='password', MASTER_LOG_FILE='mysql-bin.000001', MASTER_LOG_POS= 107; CHANGE MASTER TO MASTER_HOST='172.16.4.16',MASTER_USER='slave_user', MASTER_PASSWORD='password', MASTER_LOG_FILE='mysql-bin.000005', MASTER_LOG_POS= 1371698; |
Este comando logra varias cosas al mismo tiempo:
Designa el servidor actual como el esclavo de nuestro servidor maestro.
Proporciona al servidor las credenciales de inicio de sesión correctas.
Por último, le permite al servidor esclavo saber desde dónde comenzar a replicar; El archivo de registro maestro y la posición del registro provienen de los números que anotamos anteriormente.
Con eso, has configurado un servidor maestro y esclavo.
Activar el servidor esclavo:
1 |
START SLAVE; |
Puede ver los detalles de la replicación de esclavos escribiendo este comando. El “\G” reorganiza el texto para que sea más legible.
1 |
SHOW SLAVE STATUS\G |
Si hay un problema en la conexión, puedes intentar iniciar esclavo con un comando para omitirlo:
1 |
SET GLOBAL SQL_SLAVE_SKIP_COUNTER = 1; SLAVE START; |
Todo listo
1 2 3 4 5 |
mysql> STOP SLAVE; En caso de un error en el slave, por id iguales, me paso porque la MV slave era una copia de MV master: $ sudo service mysql stop $ sudo mv /var/lib/mysql/auto.cnf /var/lib/mysql/auto.cnf.bak $ sudo service mysql start |
Cómo configurar la replicación de esclavo maestro en MySQL
Acerca de la replicación de MySQL
La replicación de MySQL es un proceso que le permite mantener fácilmente múltiples copias de los datos de MySQL al copiarlos automáticamente de una base de datos maestra a una base de datos esclava. Esto puede ser útil por muchas razones, incluida la configuración de una copia de seguridad de los datos, una forma de analizarlos sin usar la base de datos principal, o simplemente como un medio para escalar.
Ejemplo muy simple de la replicación de mysql: un maestro enviará información a un solo esclavo. Para que el proceso funcione, necesitará dos direcciones IP: una del servidor maestro y una del esclavo.
Este tutorial utilizará las siguientes direcciones IP:
12.34.56.789- Base de datos maestra
12.23.34.456- Base de datos de esclavos
Preparar
En este artículo se supone que tiene un usuario con privilegios de sudo y tiene instalado MySQL. Si no tiene mysql, puede instalarlo con este comando:
1 |
sudo apt-get install mysql-server mysql-client |
Paso uno: configurar la base de datos maestra
Abra el archivo de configuración de mysql en el servidor maestro.
1 |
sudo nano /etc/mysql/my.cnf |
Una vez dentro de ese archivo, necesitamos hacer algunos cambios.
El primer paso es encontrar la sección que se ve así, vinculando el servidor al host local:
1 |
dirección de enlace = 127.0.0.1 |
Reemplace la dirección IP estándar con la dirección IP del servidor.
1 |
dirección de enlace = 12.34.56.789 |
El siguiente cambio de configuración se refiere a la ID del servidor, ubicada en la sección [mysqld]. Puede elegir cualquier número para este punto (puede ser más fácil comenzar con 1), pero el número debe ser único y no puede coincidir con ningún otro ID de servidor en su grupo de replicación. Voy a seguir adelante y llamar a este 1.
Asegúrate de que esta línea no tenga comentarios.
1 |
ID del servidor = 1 |
Pasa a la línea log_bin. Aquí es donde se guardan los detalles reales de la replicación. El esclavo va a copiar todos los cambios que están registrados en el registro. Para este paso, simplemente necesitamos descomentar la línea que hace referencia a log_bin:
1 |
log_bin = /var/log/mysql/mysql-bin.log |
Finalmente, debemos designar la base de datos que se replicará en el servidor esclavo. Puede incluir más de una base de datos repitiendo esta línea para todas las bases de datos que necesitará.
1 |
binlog_do_db = newdatabase |
Después de realizar todos los cambios, siga adelante, guarde y salga del archivo de configuración.
Actualizar MySQL.
1 |
sudo service mysql restart |
Los próximos pasos se llevarán a cabo en el shell de MySQL, en sí.
Abre el shell de MySQL.
1 |
mysql -u root -p |
Necesitamos otorgar privilegios al esclavo. Puedes usar esta línea para nombrar a tu esclavo y configurar su contraseña. El comando debe estar en este formato:
1 |
GRANT REPLICATION SLAVE ON *. * TO 'slave_user' @ '%' IDENTIFIED BY 'password'; |
Ir a la par de:
1 |
PRIVILEGIOS DE LAVADO; |
La siguiente parte es un poco meticulosa. Para llevar a cabo la tarea, deberá abrir una nueva ventana o pestaña, además de la que ya está usando unos pocos pasos en la línea.
En su pestaña actual, cambie a «newdatabase».
1 |
USE newdatabase; |
A continuación, bloquee la base de datos para evitar nuevos cambios:
1 |
LAVAR LAS TABLAS CON CERRADURA LEER; |
Luego escribe:
1 |
MOSTRAR ESTADO MAESTRO; |
Verás una tabla que debería verse así:
1 2 3 4 5 6 7 |
mysql> SHOW MASTER STATUS; + ------------------ + ---------- + -------------- + ---- -------------- + | Archivo | Posición | Binlog_Do_DB | Binlog_Ignore_DB | + ------------------ + ---------- + -------------- + ---- -------------- + | mysql-bin.000001 | 107 | nueva base de datos | | + ------------------ + ---------- + -------------- + ---- -------------- + 1 fila en conjunto (0.00 seg) |
Esta es la posición desde la cual la base de datos esclava comenzará a replicarse. Anota estos números, te serán útiles más adelante.
Si realiza cambios nuevos en la misma ventana, la base de datos se desbloqueará automáticamente. Por este motivo, debe abrir la nueva pestaña o ventana y continuar con los siguientes pasos allí.
Continuando con la base de datos aún bloqueada, exporte su base de datos usando mysqldump en la nueva ventana (asegúrese de escribir este comando en el shell bash, no en MySQL).
1 |
mysqldump -u root -p --opt newdatabase> newdatabase.sql |
Ahora, volviendo a su ventana original, desbloquee las bases de datos (haciéndolas que se puedan volver a escribir). Terminar saliendo de la concha.
1 |
TABLAS DE DESBLOQUEO; |
1 |
DEJAR; |
Ahora que ha terminado con la configuración de la base de datos maestra.
Paso dos: configurar la base de datos de esclavos
Una vez que haya configurado la base de datos maestra. Puede dejarlo de lado por un tiempo, y ahora comenzaremos a configurar la base de datos esclava.
Inicie sesión en su servidor esclavo, abra el shell de MySQL y cree la nueva base de datos que replicará desde el maestro (luego salga):
1 |
CREAR BASE DE DATOS newdatabase; |
1 |
SALIDA; |
Importe la base de datos que exportó previamente desde la base de datos maestra.
1 |
mysql -u root -p newdatabase </path/to/newdatabase.sql |
Ahora necesitamos configurar la configuración del esclavo de la misma manera que hicimos el maestro:
1 |
sudo nano /etc/mysql/my.cnf |
Tenemos que asegurarnos de que tenemos algunas cosas configuradas en esta configuración. El primero es el servidor-id. Este número, como se mencionó anteriormente, debe ser único. Dado que está configurado en el valor predeterminado (aún 1), asegúrese de cambiarlo, es algo diferente.
1 |
ID del servidor = 2 |
Después de eso, asegúrese de que tiene los siguientes tres criterios debidamente llenados:
1 |
relay-log = /var/log/mysql/mysql-relay-bin.log |
1 |
log_bin = /var/log/mysql/mysql-bin.log |
1 |
binlog_do_db = newdatabase |
Deberá agregar en la línea de registro de retransmisión: no está ahí por defecto. Una vez que haya realizado todos los cambios necesarios, guarde y salga del archivo de configuración esclavo.
Reinicie MySQL una vez más:
1 |
sudo service mysql restart |
El siguiente paso es habilitar la replicación desde el shell de MySQL.
Abra el shell de MySQL una vez más y escriba los siguientes detalles, reemplazando los valores para que coincidan con su información:
1 |
CHANGE MASTER TO MASTER_HOST = '12 .34.56.789 ', MASTER_USER =' slave_user ', MASTER_PASSWORD =' password ', MASTER_LOG_FILE =' mysql-bin.000001 ', MASTER_LOG_POS = 107; |
Este comando logra varias cosas al mismo tiempo:
- Designa el servidor actual como el esclavo de nuestro servidor maestro.
- Proporciona al servidor las credenciales de inicio de sesión correctas.
- Por último, le permite al servidor esclavo saber desde dónde comenzar a replicar; El archivo de registro maestro y la posición del registro provienen de los números que anotamos anteriormente.
Con eso, has configurado un servidor maestro y esclavo.
Activar el servidor esclavo:
1 |
COMENZAR ESCLAVO; |
Puede ver los detalles de la replicación de esclavos escribiendo este comando. El \ G reorganiza el texto para que sea más legible.
1 |
MOSTRAR ESTADO ESCLAVO \ G |
Si hay un problema en la conexión, puedes intentar iniciar esclavo con un comando para omitirlo:
1 |
SET GLOBAL SQL_SLAVE_SKIP_COUNTER = 1; ESCLAVO DE INICIO; |
Todo listo.
Importar/ Exportar bd MySQL y Script para la configuracion de Backup
IMPORTAR BD
1 |
mysql -u usuario -p nombre_basededatos < data.sql #!/bin/bash # Add your backup dir location, password, mysql location and mysqldump DATE=$(date +%Y%m%d-%H%M) BACKUP_DIR="/home/directorio/" MYSQL_USER="nombredeusuario" MYSQL_PASSWORD="password" MYSQL=mysql MYSQLDUMP=mysqldump # To create a new directory into backup directory location mkdir -p $BACKUP_DIR/$DATE # get a list of databases #databases=`$MYSQL --host=0.0.0.0 -u$MYSQL_USER -p$MYSQL_PASSWORD -e "SHOW DATABASES;" | #grep -Ev "(Database|information_schema)"` # dump each database in separate name #for db in $databases;do #echo $db mysqldump --host=0.0.0.0 -u$MYSQL_USER -p$MYSQL_PASSWORD --databases support | gzip > "$BACKUP_DIR/$DATE/support.sql.gz" |
1 |
#done |
1 |
# Delete files older than 30 days |
1 |
#find $BACKUP_DIR/* -mtime +30 -exec rm -R {} \; |
Instalación y configuración de mySQL por consola
CAMBIAR LA DIRECCION FISICA DE LOS ARCHIVOS DE DB DE MySQL
check the current data directory of MySQL:
mysql> select @@datadir;
+—————–+
| @@datadir |
+—————–+
| /var/lib/mysql/ |
+—————–+
1 |
sudo systemctl stop mysql |
1 |
sudo systemctl status mysql |
1 |
sudo rsync -av /var/lib/mysql /lms/db/ |
1 |
sudo mv /var/lib/mysql /var/lib/mysql.backup |
1 |
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf |
se cambio Agrega la nueva ubicacion en apparmor:
1 |
sudo nano /etc/apparmor.d/tunables/alias |
Se reinicia el apparmor
1 |
sudo systemctl restart apparmor |
En caso de Mostrar el Siguiente error:
Job for apparmor.service failed because the control process exited with error code.
See «systemctl status apparmor.service» and «journalctl -xe» for details.
Create the minimal directory structure:
1 |
sudo mkdir /var/lib/mysql/mysql -p |
1 |
sudo systemctl start mysql |
1 |
sudo systemctl status mysql |
mysql> select @@datadir;
FUENTES:
MySQL: Move Data Directory to a New Location on Ubuntu 16.04
DESINTALAR TOTALMENTE MySQL
1 |
sudo apt-get purge mysql-server mysql-client mysql-common mysql-server-5.7 |
A continuación se enumeran algunos recursos de internet para la administración de mysql desde la consola de linux. Se abarcan desde los comandos típicos de consulta de datos de tablas hasta la conexión y administración de un servidor mysql remoto.
¿Cómo resetear la password de ROOT en MYSQL o MariaDB
En caso de pérdida del acceso root en MYSQL, puedes seguir el siguiente procedimiento para recuperar la clave root. Este tutorial vale para versiones anteriores o nuevas de MYSQL o MariaDB
Requisito
Tener acceso de superusuario al servidor
Paso 1: Identificar la versión de la base de datos. Puedes utilizar la siguiente orden para identificar la versión de la base de datos que estás utilizando
1 |
mysql --version |
Verás la siguiente salida en consola, varía en función de la versión
Si se trata de MYSQL
mysql Ver 14.14 Distrib 5.7.16, para Linux (x86_64) usando el envoltorio EditLine
Si se trata de MariaDB
mysql Ver 15.1 Distrib 5.5.52-MariaDB, para Linux (x86_64) usando readline 5.1
Acuérdate de la versión que estás utilizando, luego tendrás que aplicar unos comandos u otros
Paso 2: Parar el servidor de base de datos
En el caso de MYSQL
1 |
sudo systemctl stop mysql |
En el caso de MariaDB
1 |
sudo systemctl stop mariadb |
Paso 3: Reiniciar el servidor de base de datos sin chequeo de permisos
Arranca el servidor en modo safe sin tabla de verificación de permisos con la siguiente orden.
1 |
sudo mysqld_safe --skip-grant-tables --skip-networking & |
Ahora te conectas al servidor como root sin contraseña
1 |
mysql -u raíz |
1 |
MariaDB [(ninguno)]> |
Paso 4: Cambiar la clave de root
Vamos a pedir al servidor que recargue las tablas GRANT con el siguiente comando
PRIVILEGIOS DE LAVADO;
Ahora podemos cambiar la clave
Para MySQL 5.7.5 y versiones anteriores así como MariaDB 10.1.20 y versiones anteriores, usar el siguiente comando:
1 |
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('nueva_clave'); |
Si ALTER USER no funciona, prueba el siguiente comando:
ACTUALIZAR
1 |
mysql.user SET authentication_string = PASSWORD ('nueva_clave') DONDE Usuario = 'root' AND Host = 'localhost'; |
FLUSH PRIVILEGES; (si no ha funcionado la primera vez)
salida
Consulta OK, 0 filas afectadas (0.00 seg)
La clave ha sido cambiada
Paso 5. Arrancar la base de datos manualmente
En MySQL,
1 |
sudo kill `cat / var / run / mysqld / mysqld.pid` |
1 |
sudo systemctl start mysql |
En MariaDB,
1 |
sudo kill `/ var / run / mariadb / mariadb.pid` |
1 |
sudo systemctl start mariadb |
Ahora prueba loggear en mysql con la nueva clave que has metido
1 |
mysql -u root -p |
————————————————————————————————————————————
Proceso de re-instalación de mysql-server en los servidores de LMS:
-Desinstalar mysql con ‘sudo apt-get purge mysql-server mysql-client mysql-common mysql-server-5.7’.
-Reinstalar mysql con ‘sudo apt install mysql-server’.
-Configurar mysql con ‘sudo mysql_secure_installation’ (sin habilitar validación de contraseñas seguras).
-Cambiar clave del usuario root de mysql: soladmin123**
-Listado de comandos:
1 2 3 4 5 |
sudo mysql -u root -p mysql> UPDATE user SET plugin='mysql_native_password' WHERE User='root'; mysql> FLUSH PRIVILEGES; mysql> exit; mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'soladmin123**';FLUSH PRIVILEGES; |
-Dar privilegios totales al usuario root@’localhost’ sobre todas las bases de datos con ‘GRANT ALL PRIVILEGES ON *.* TO root@’localhost’ IDENTIFIED BY ‘soladmin123**’;’.
-Dar privilegios totales al usuario root@’%’ sobre todas las bases de datos con ‘GRANT ALL PRIVILEGES ON *.* TO root@’%’ IDENTIFIED BY ‘soladmin123**’;’.
-Crear nuevo usuario ‘soladmin’ con contraseña ‘soladmin’ con ‘CREATE USER ‘soladmin’@’localhost’ IDENTIFIED BY ‘soladmin’;’.
-Crear base de datos ‘soldb’ con ‘CREATE DATABASE soldb;’.
-Dar privilegios totales al usuario soladmin@’localhost’ sobre la base de datos ‘soldb’ con ‘GRANT ALL PRIVILEGES ON soldb.* TO soladmin@’localhost’ IDENTIFIED BY ‘soladmin’;’.
-Dar privilegios totales al usuario soladmin@’%’ sobre la base de datos ‘soldb’ con ‘GRANT ALL PRIVILEGES ON soldb.* TO soladmin@’%’ IDENTIFIED BY ‘soladmin’;’.
Comandos para la Gestión de mySQL desde consola
* Comandos para cambiar la contraseña de un usuario y dar privilegios a todas las bases de datos:
1) Nos conectamos con el usuario root con:
mysql -u root -p
2) Le asignamos privilegios a todas las bases de datos a un determinado usuario a la vez que le asignamos una nueva contraseña:
GRANT ALL PRIVILEGES ON *.* TO ‘usuario’@’localhost’ identified by ‘nueva_contraseña’;
* Comando para importar una base de datos:
1) Nos conectamos con un usuario que tenga privilegios sobre la base de datos en la que se va a realizar la importación y a la vez ejecutamos la importación:
mysql -u usuario -p base_de_datos_existente_vacía < ruta/archivo.sql
* Comandos para descargar la base de datos de producción 192.168.99.148 de 50GB al servidor de producción 10.101.7.3:
1) Estando en el servidor 10.101.7.3, nos movemos al directorio '/lms/db'.
2) Ya en el directorio '/lms/db' nos logueamos como root con 'sudo su'.
3) Una vez estemos como root ejecutamos el siguiente comendo para hacer la descarga: nohup mysqldump -h 192.168.99.148 --default-character-set=utf8 -u support -p support > soldb_complete.sql
4) Se puede ir checkeando el progreso de la descarga con:
ls -lh soldb_complete.sql
* Comandos para importar la base de datos descargada:
1) Estando en el directorio directorio ‘/lms/db’ del servidor de producción 10.101.7.3 ejecutamos:
mysql -u soladmin -p soldb < soldb_complete.sql
Nota: Esto importará la base de datos en su ubicación física por defecto. Falta saber cómo indicarle la ubicación física.
EXPORTAR BASE DE DATOS
mysqldump -h 127.0.0.1 -u USER -p NOMBASEDATOS > /directorio/ARCHIVO.sql
IMPORTAR BASE DE DATOS
mysql -u USUARIO -p NOMBREDEBD < ARCHIVO.sql
BORRAR BASE DE DATOS
drop database NOMBREDEBD;
CREAR BASE DE DATOS
create database NOMBREDEBD;
FUENTES:
MySQL por línea de comandos:
https://desarrolloweb.com/articulos/2408.php
Cómo importar y exportar una base de datos MySQL desde la consola de Linux:
http://www.profesionalesdevenezuela.org.ve/Servicios/nuestro-foro/viewtopic.php?t=54
Importar y exportar una sola tabla de MySQL:
https://cafedixital.com/blog/importar-y-exportar-una-sola-tabla-de-mysql/
http://www.linuxhispano.net/2012/04/18/donde-almacena-los-datos-mysql/
https://fututel.com/es/tutoriales-guias-manuales-videotutoriales/2632-mover-un-directorio-de-datos-mysql-a-una-nueva-ubicacion-en-ubuntu-16-04