Showing entries 1 to 10 of 414
Próximo 10 Viejas entradas »
Displaying posts with tag: MySQL (reset)
Common_schema: tareas repetitivas con foreach

Aunque hemos hablado varias veces de este framework de MySQL-MariaDB, hoy os traigo una nueva función, muy útil cuando necesitas realizar tareas repetitivas basadas en consultas. Se trata de utilizar call foreach. Aquí expongo un ejemplo práctico de cómo lo he usado yo para ejecutar una tarea concreta: reemplazar todos los valores nulos a cero en una tabla con un monton de campos. Localizando los campos de la tabla Para localizar los campos a los que aplicar la rutina, qué mejor que utilizar information_schema, que es una de las bases...read more

Esta entrada Common_schema: tareas repetitivas con foreach es contenido original de Manejando datos - Blog de bases de …

[Lea más]
Mecanismo de los índices en MySQL-MariaDB

En pasadas entradas sobre MySQL os conté primero la ventaja a nivel de rendimiento que supone tener índices en las bases de datos, y posteriormente, cómo forzar a MySQL a usar un índice que no es el que MySQL estima que es el mejor. La entrada de hoy profundiza en cómo esel mecanismo de los índices en las tablas de MySQL-MariaDB, con el fin de que lo tengas presente para la optimización de consultas. Aunque esta entrada es bastante teórica, creo que es muy interesante que prestes toda la atención...read more

Esta entrada Mecanismo de los índices en MySQL-MariaDB es contenido original de Manejando datos - Blog de bases de datos y programación. This entrance …

[Lea más]
Faster method: TRUNCATE or DROP a table?

I am working a a project in the University and I need to re-create a table. For that task, I’m thinking in two ways: using TRUNCATE, or dropping the table and create it again. TRUNCATE is a SQL sentence that empties a table, and for using it, you need to be granted as using DROP priviledge. autokey is reset to zero. The second option is using DROP a table, and create it again using CREATE TABLE. Para valorar de las dos opciones es más rápida, vamos a utilizar PROFILE, para...read more

Esta entrada Faster method: TRUNCATE or DROP a table? es contenido original de Manejando datos - Blog de bases de datos y programación. This entrance …

[Lea más]
Qué es más rápido: TRUNCATE de una tabla, o ELIMINAR una gran tabla en MySQL?

Dentro de un proyecto que tengo con al Universidad, necesito rehacer una tabla y me planteo usar el método más rápido de las dos posibilidades que hay: hacer un TRUNCATE, o bien eliminar la tabla completamente y volverla a crear. TRUNCATE es la opción de vaciar una tabla reiniciando también el valor de autonumérico a generar, volviendo a uno. Eliminar una tabla es hacer DROP TABLE, con lo que directamente te cargas la tablas, y que requerirá un CREATE TABLE para restablecer la estructura. Para valorar de las dos opciones...read more

Esta entrada Qué es más rápido: TRUNCATE de una tabla, o ELIMINAR una gran tabla en MySQL? es contenido original de …

[Lea más]
innodbchecksum: Uso de ibdata

En una base de datos con InnoDB nos podemos encontrar que tenemos un ibdata1 absurdamente grande y no acabamos de entender que hay en dicho fichero. Mediante un attach del bug #57611 de MySQL, podemos ver el tipo de páginas que contiene el ibdata

Si lo bajamos y lo compilamos, simplemente deberemos ejecutarlo indicando dónde tenemos el ibdata. Si el fichero es grande quiza nos interese añadir la opción -v para ver el progreso:

# ./innodbchecksum -v /mysql/data/mysql-data/ibdata1 
file /mysql/data/mysql-data/ibdata1 = 25436356608 bytes (1552512 pages)...
checking pages in range 0 to 1552511
page 19999 okay: 1.288% done
page 29999 okay: 1.932% done
page 39999 okay: 2.576% done
(...)
0       bad checksum
1189668 FIL_PAGE_INDEX
325740  FIL_PAGE_UNDO_LOG
15      FIL_PAGE_INODE
555     FIL_PAGE_IBUF_FREE_LIST
36328 …
[Lea más]
Learning #MySQL at SoyData.Net

This entrance is dedicated to a new website for learning #BigData in spanish: SoyData.net. What is SoyData.net It is a collaborative online training platform on all matters relating to data in spanish. It now has 15 fully uploaded and available courses to which they have registered more than five hundred people in just two weeks. These courses address specific high demand technologies like Hadoop, MongoDB, R and cover key areas such as visualization, cloud computing or Structured Query Language (SQL). It also provides an introduction to #BigData concept for those...read more

Esta entrada Learning #MySQL at SoyData.Net es contenido original de Manejando datos - Blog de bases de datos y …

[Lea más]
Aprendiendo MySQL en soydata.net

Hoy voy a hablar de un sitio web que he descubierto hace bien poco sobre aprendizaje de Big Data en español: SoyData.net. Qué es SoyData.net Es una plataforma colaborativa de formación online sobre todo lo referente a los Datos en español. Ahora mismo cuenta con 15 cursos subidos y completamente disponibles, a los cuales se han inscrito ya más de medio millar de personas en sólo dos semanas. Estos cursos tratan de tecnologías específicas muy demandadas como Hadoop, MongoDB, R y también cubren áreas clave como visualización, cloud computing o...read more

Esta entrada Aprendiendo MySQL en soydata.net es contenido original de Manejando datos - Blog de bases de datos y …

[Lea más]
MySQL: extended insert

Al realizar dumps con mysqldump podemos hacerlo con los datos insertados mediante un único INSERT o bien un INSERT pode cada fila

# mysqldump --skip-extended-insert dbejemplo | grep ^INSER
INSERT INTO `a` VALUES (1);
INSERT INTO `a` VALUES (2);
INSERT INTO `a` VALUES (3);
# mysqldump --extended-insert dbejemplo | grep ^INSER
INSERT INTO `a` VALUES (1),(2),(3);

Dicho detalle también afecta al tiempo de importación

Vamos a usar una base de datos relativamente pequeña de ejemplo:

# du -hs /var/lib/mysql/dbejemplo/
57M     /var/lib/mysql/dbejemplo/

Creamos los dumps con y sin –extended-insert

# mysqldump --skip-extended-insert dbejemplo > /var/backup/test/skip-extended-insert.sql
# mysqldump --extended-insert dbejemplo > /var/backup/test/extended-insert.sql

En el caso del dump com extended …

[Lea más]
Total de transacciones InnoDB en MySQL

Para tener una idea de la actividad que tiene una base de dados normalmentr de usa SHOW PROCESLIST, pero es engañoso en algunos casos. Por ejemplo, si tenemos un pool de conexiones y también transacciones InnoDB abiertas veremos en ambos casos que estan en estado Sleep

Podemos verlo mediante la siguiente query:

mysql> select ps.id, ps.user,ps.host, ps.db, ps.command, ps.time, ps.state, trx.trx_state, ps.info from PROCESSLIST ps left join INNODB_TRX trx on ps.id=trx.trx_mysql_thread_id;
+----+------+-----------+--------------------+---------+------+-----------+-----------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| id | user | host      | db                 | command | time | state     | trx_state | info …
[Lea más]
Export large datasets from MySQL using Python

In the entrance about export large datasets we’ll see several ways of doing it, and now it is time to see how to do it with Python. Conecting to MySQL from Python Before continue, you could read here how to  conect to MySQL from Python, where you also use a class I use to connect because this class does what I like. But for this entrance, I will conect directly to MySQL by using the library PyMySQL. You only need to import the library, set the correct informacion for the...read more

Esta entrada Export large datasets from MySQL using Python es contenido original de Manejando datos - Blog de bases de datos y programación. This entrance Export large datasets from …

[Lea más]
Showing entries 1 to 10 of 414
Próximo 10 Viejas entradas »