Original post: http://anothermysqldba.blogspot.com/2014/12/a-mysql-partition-and-subpartition.html
Así que esto es sólo un ejemplo sencillo de cómo configurar una
partición y un subpartición en MySQL. El concepto aquí es
que usted tiene datos en una tabla con numerosos valores en un
campo de fecha y hora. Es posible que tenga datos que se
propagan a través de numerosos años (probablemente lo
hace). Así que una forma de partición de estos datos es de
tipo que por años, pero luego también ordenarla por mes dentro de
esa partición anual.
A continuación se muestra un ejemplo que puede utilizar para su
consideración.
Tenga en cuenta la tabla de prueba. Su mesa con tener muchos
más campos de golf.
CREATE TABLE `t1` …
En versiones anteriores a MySQL 5.6 podíamos crear tablas sin especificar el storage engine:
mysql> create table lol(id int); Query OK, 0 rows affected (0.11 sec)
A partir de MySQL 5.6, por defecto, se quejará de error de sintaxis:
mysql> create table lol(int id); ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'int id)' at line 1
Si miramos el sql_mode que tenemos por defecto en MySQL 5.6 veremos que tenemos:
mysql> show variables like 'sql_mode'; +---------------+--------------------------------------------+ | Variable_name | Value | +---------------+--------------------------------------------+ | sql_mode | STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION | …[Lea más]
En las versiones recientes de MySQL (+4.1) el formato por defecto se trata de un hash formado por 40 carácteres:
mysql> select password("systemadmin.es"); +-------------------------------------------+ | password("systemadmin.es") | +-------------------------------------------+ | *3E04A027486FB53129AC5812D2CF8E4062899311 | +-------------------------------------------+ 1 row in set (0.00 sec)
Dicho hash corresponde al resultado de aplicar el SHA1 a la cadena que le pasamos dos veces, pero la segunda no sobre la cadena hexadecimal sino el hash binario, lo podemos ver en el código de MySQL:
/* MySQL 4.1.1 password hashing: SHA conversion (see RFC 2289, 3174) twice applied to the password string, and then produced octet sequence is converted to hex string. The result of this function is used as return value from PASSWORD() and is stored in the …[Lea más]
Original post: http://anothermysqldba.blogspot.com/2014/11/recover-lost-mysql-data-with.html
Copia de seguridad de copia de seguridad ... ... Copia de
seguridad ... pero claro .. también hay que controlar y probar
esas copias de seguridad a menudo de lo contrario podrían ser
inútil. Tener sus MySQL binlogs habilitado sin duda puede ayudar
en momentos de una emergencia también. Los binlogs MySQL a
menudo se hace referencia en lo que respecta a la replicación de
MySQL, por una buena razón, almacenan todas las consultas o
eventos que alteren los datos …
Detras de las siglas LEMP de esconde el típico LAMP cambiando el Apache por un nginx (la E es por la forma que se pronuncia. Vamos a ver cómo instalar una LEMP en CentOS 7:
Primero deberemos instalar los repositorios:
- Podemos instalar el repositorio oficial de
nginx mediante:
rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
- Para MySQL 5.6 también podemos tirar del
repositorio oficial para substituir la MariaDB que nos viene por
defecto:
rpm -Uvh http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
- Para otras utilidades que necesitaremos también podemos …
A partir de la versión 5.6.8 del cliente de MySQL podremos ver que tenemos algunas queries que son ignoradas del history.
Una forma común de obtener contraseñas de un MySQL era mirar en los ficheros .mysql_history en búsqueda de dichas contraseñas, por esto se ha añadido la opción –histignore para poder controlar que comandos acaban en el history del cliente de MySQL.
Por defecto, incluye las keywords IDENTIFIED y PASSWORD de la siguiente manera:
*IDENTIFIED*:*PASSWORD*
Por lo que cualquier comando, incluse una SELECT o un CREATE TABLE que incluya un campo llamado “password”, no se añadirá el history:
mysql> use mysql Database changed mysql> select user,password from mysql.user; +------+-------------------------------------------+ | user | password | …[Lea más]
Original post: http://anothermysqldba.blogspot.com/2014/11/systemctl-and-mysql.html
Así que algunos usuarios puedan terminar un yum install de MySQL
y esperar a ser capaz de utilizar el siguiente comando para
iniciar el servidor MySQL :: /etc/init.d/mysql comienzan sólo
para obtener "No existe el fichero o directorio"
Así que este es un post rápido para ayudar a utilizar el comando
systemctl. Es probable que ver esto: # systemctl
list-unit-files | grep mysql
mysqld.service disabled
En primer lugar yo recomendaría ir a …
Para realizar backups en Galera, podemos usar xtrabackup.
La única diferéncia es que deberemos conservar la posición del backup, mediante la opción –galera-info se guarda automáticamente:
# innobackupex --galera-info /var/backups/xtrabackup InnoDB Backup Utility v1.5.1-xtrabackup; Copyright 2003, 2009 Innobase Oy and Percona LLC and/or its affiliates 2009-2013. All Rights Reserved. (...) 140826 16:57:33 innobackupex: Connection to database server closed 140826 16:57:33 innobackupex: completed OK!
Dentro del backup podemos encontrar el fichero xtrabackup_binlog_info:
# ls /var/backups/xtrabackup/2014-08-26_16-57-30/ backup-my.cnf ibdata1 mysql/ test/ xtrabackup_checkpoints xtrabackup_info binlog.000008 jordidb/ performance_schema/ xtrabackup_binlog_info …[Lea más]
Mediante xtrabackup también podemos realizar tanto backups como restauraciones parciales. Vamos a ver cómo hacer un backup de una base de datos en concreto y a continuación cómo realizar una restauración parcial de una tabla.
Para realizar un backup parcial de una base de datos únicamente deberemos añadir la opción –databases para indicarla, por ejemplo:
# innobackupex --databases="db2" /var/backups/xtrabackup/ InnoDB Backup Utility v1.5.1-xtrabackup; Copyright 2003, 2009 Innobase Oy and Percona LLC and/or its affiliates 2009-2013. All Rights Reserved. This software is published under the GNU GENERAL PUBLIC LICENSE Version 2, June 1991. (...) innobackupex: Backup created in directory '/var/backups/xtrabackup/2014-08-26_19-51-43' innobackupex: MySQL binlog position: filename 'binlog.000017', position 1496, gtid_executed …[Lea más]
El
próximo sábado 8 de noviembre a las 19:30 estaré hablando sobre
MySQL Fabric en la PyConES 2014
(la versión española de la PyCon), la reunión anual de programadores y
entusiastas de Python en España.
Aunque no me auto-denomino como programador, una gran parte de mi
tiempo cono consultor de MySQL require implementar procedimientos
automáticos (backups, comprobaciones de salud, gestión de AWS, …)
y para ello utilizo principalmente una combinación de Python y
Bash.
En mi charla, que he titulado “MySQL Fabric, a High Availability solution for Connector/Python” explicaré cómo montar y configurar un conjunto de servidores MySQL y …
[Lea más]