Displaying posts with tag: MySQL (reset)
Eliminar usuario de MySQL

Para poder eliminar usuarios de una base de datos MySQL tenemos el comando DROP USER:

Si indicamos la combinación usuario@host podemos eliminar el acceso del usuario para esos determinados hosts, por ejemplo:

mysql> drop user 'joffrey'@'casterlyrock.com', 'joffrey'@'kingslanding.com';

Si indicamos únicamente el usuario, lo eliminaremos completamente, para todos los hosts:

mysql> drop user joffrey;

Tags: MySQL

Relacionados

[Lea más]
Buscar y matar transacciones inactivas. Evitando problemas mayores

InnoDB se convirtió en el motor de almacenamiento por defecto en MySQL 5.5. Era un paso lógico. Es un motor transaccional, escalable y con un rendimiento superior a MyISAM. Hay que recordar esa frase tan mítica... MyISAM es el lugar donde los datos van para morir. Pero ese cambio ha traído algunas consecuencias. Malas prácticas que en MyISAM no tenían ningún efecto visible en InnoDB pueden causar graves problemas.

Uno de ellos es dejar transacciones abiertas y olvidadas. Y no hablo de minutos o horas, si no días e incluso he llegado a ver semanas. Cuando te contactan y te dicen que hay un problema con alguno de estos síntomas:

  • ibdata1 no para de crecer, nos vamos a quedar sin espacio en disco
  • la base de datos funciona muy lenta y tenemos constantes errores de tiempo de espera agotado esperando bloqueos de filas

Ya casi tenemos claro donde está el problema. Un SHOW ENGINE …

[Lea más]
mysqldump: Warning: Skipping the data of table mysql.event

Al realizar un mysqldump nos podemos encontrar con el siguiente warning:

# mysqldump --all-databases
-- Warning: Skipping the data of table mysql.event. Specify the --events option explicitly.

Se trata de una alerta por si tenemos habilitado el event scheduler. Podemos consultarlo mediante:

mysql> show variables like '%event%';
+-----------------+-------+
| Variable_name   | Value |
+-----------------+-------+
| event_scheduler | OFF   |
+-----------------+-------+
1 row in set (0.00 sec)

Si no lo estamos usando podemos ignorar la tabla para quitar el warning mediante:

--events --ignore-table=mysql.event

Encaso contrario, nos interesa que tengamos backup también de estos jobs, porlo que deberemos añadir:

--events

Tags: …

[Lea más]
Forzar el inicio de InnoDB con MySQL +5.1.36

A partir de la versión 5.1.36 de MySQL, la opción –innodb puede usarse con tres valores para controlar si se arranca o no InnoDB y si se arranca, si es un engine obligatorio para el arranque del daemon de MySQL

Las opciones que podemos pasar a la opción innodb son:

  • OFF: Desactivamos InnoDB
  • ON: Activamos InnoDB, pero si falla en el arranque, el daemon puede arrancar (las tablas del resto de storage engines) a no ser que InnoDB sea el storage engine por defecto (opción –default-storage-engine)
  • FORCE: Aunque InnoDB no sea el storage engine por defecto, si falla no permite el arranque de mysqld

Por lo tanto, podemos …

[Lea más]
Configuración de clientes MySQL

Mediante el fichero my.cnf no únicamente podemos configurar el comportamiento del servidor MySQL, sino que también los clientes como el comando mysql o mysqldump

Mediante la sección mysql podemos configurar el cliente del mismo nombre:

[mysql]
socket=/tmp/mysql.sock

De la misma forma que lo podemos hacer para mysqldump:

[mysqldump]
socket=/tmp/mysql.sock

Igual para mysqlhotcopy, pero podemos hacerlo globalmente para todos los clientes locales con la sección client:

[client]
socket=/tmp/mysql.sock

De esta forma podemos configurar los parámetros globales en dicha sección y los específicos de cada herramienta en la propia sin tener que repetir parámetros

Tags: …

[Lea más]
Benchmark MySQL con mysqlslap

Original post: http://anothermysqldba.blogspot.com/2014/05/mysql-benchmark-with-mysqlslap.html

Así que la evaluación comparativa de diferentes consultas de MySQL en contra de su base de datos es una cosa sabia que hacer. Eso debería ser evidente. Mientras que optimizamos consultas lo mejor que podemos utilizar explicar (y EXTENDIDO) llevándolos tiempo para compararlas deberían resultar útiles. 

Este es un simple ejemplo de ejecución de una sentencia mysqlslap. 

Para este ejemplo he cargado la base de datos de MySQL MUNDO. ( …

[Lea más]
Password root de MySQL en Plesk

En el caso que necesitemos entrar en el MySQL de una maquina con Plesk para evitar tener que usar el interfaz gráfico, primero deberemos localizar el password de root del MySQL

Podemos encontrar el fichero /etc/psa/.psa.shadow que contiene el password de root del MySQL:

# cat /etc/psa/.psa.shadow
$AES-128-CBC$L0T0rD0u0CN0W0KB0T0n0w==$k050f0090g0E0fk0L0d0F0==

A primera vista diremos: ¡Esta cifrado!

Pero no, este es litralemente el password de root del MySQL, el único detalle es que el usuario administrador no se llama root como es habitual, sino que se llama admin. Por lo tanto, para conectarnos al MySQL como root de un Plesk deberemos ejecutar:

# mysql -uadmin -p$(cat /etc/psa/.psa.shadow)
Enter password:
Welcome to the MySQL monitor.  Commands end …
[Lea más]
Particiones MySQL timestamp - fecha y hora

Original post: http://anothermysqldba.blogspot.com/2014/04/mysql-partitions-timestamp-datetime.html

Así que hace poco me di cuenta de que aún no he hablado mucho sobre las particiones de MySQL.
Muchos mensajes de blog en buenas particiones MySQL ya existe y yo hemos enumerado algunos abajo.

[Lea más]
Las foreign keys implican un índice

En las bases de datos, no nos interesa tener índices duplicados para evitar el coste extra que implica actualizarlos (además del espacio en disco). Por eso, deberemos tener en cuenta que si creamos una foreign key, estamos también creando un índice sobre dicha columna y por lo tanto, no es necesario crear otro índice:

Podemos verlo mediante las siguientes dos tablas, t2 tiene una foreign key sobre el segundo campo:

mysql> create table t1(id int primary key);
Query OK, 0 rows affected (0.08 sec)

mysql> create table t2 (id int primary key, id2 int, constraint k foreign key (id2) references t1(id));
Query OK, 0 rows affected (0.06 sec)

Insertamos unos datos de ejemplo:

mysql> insert into t1 values (1),(2);
Query OK, 2 rows affected (0.02 sec)
Records: 2  Duplicates: 0  Warnings: 0

mysql>  insert into t2 values (1,1),(2,1),(3,1),(4,2);
Query OK, 4 rows affected (0.03 sec)
Records: 4 …
[Lea más]
MySQL-MariaDB Registry files

One feature from MySQL (also from MariaDB) very useful for DBA is registry files, that stores everything of what is happening on the server. You have several alternatives. By default, all registry files are located on the data dir, although you can force to save it to a different path (you must do this using …

Continue reading »

Esta entrada MySQL-MariaDB Registry files es contenido original de Manejando datos - Blog de bases de datos y programación. This entrance MySQL-MariaDB Registry files is created by Manejando datos …

[Lea más]