Mostrando entradas con la etiqueta mysql. Mostrar todas las entradas
Mostrando entradas con la etiqueta mysql. Mostrar todas las entradas

martes, 19 de abril de 2011

Exportar consulta MySQL a CSV desde Python

A modo de apunte dejo un pequeño script en Python para exportar una consulta MySQL a CSV. Estoy bastante liado con un pequeño proyecto relacionado con Moodle y Drupal. El caso es que NO se puede tocar NADA del Moodle y los mismos usuarios de Moodle deben tener acceso a Drupal. He dedicado tiempo a buscar un módulo que permita cambiar el modo de validación de Drupal, pero no he encontrado apenas información. No, no me vale el MoodleSSO.


#!/usr/bin/python
#-*- coding: UTF-8 -*
import _mysql
mysql_servidor = 'localhost'
mysql_usuario = 'user'
mysql_clave = 'ejemplo'
mysql_bd = 'moodle'
conexion = _mysql.connect(host=mysql_servidor, user=mysql_usuario, passwd=mysql_clave, db=mysql_bd)
sql = "SELECT username,password,email INTO OUTFILE '/tmp/drupal_export.csv' FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '\"' ESCAPED BY '\\\\' FROM mdl_user "
conexion.query(sql)
conexion.close()

miércoles, 17 de febrero de 2010

automysqlbackup

EnlaceEnlace
Vía @zetxek me entero de que en SourceForge hay un script de nombre automysqlbackup que permite automatizar los backups de MySQL. Persolmante prefiero escribir mis propios scripts, ya que muchas veces escriben en dispositivos de cinta(mt) o en discos usb, o montan directorios vía NFS o CIFS. Total, que le he echado un vistazo y me ha parecido interesante dejar una reseña en el blog.

lunes, 23 de noviembre de 2009

Nota mental MySQL

Hay mucha gente que "pasa olímpicamente" de cuidar la codificación de caracteres de sus documentos. Si ya es un lío modificar el juego de caracteres de un documento en concreto(a veces con iconv no obtenemos el resultado deseado), imaginaos la que se puede montar si tenemos una base de datos con miles de registros, y mostramos los resultados de una consulta vía web con codificación UTF-8 y los registros están codificados en ISO-8859-1. Sé que PHP, por ejemplo dispone de funciones que convierten "al vuelo" un juego de caracteres al otro, pero en mi caso, como con iconv, no obtenía los resultados esperados. En un intento casi desesperado he logrado convertir los caracteres que para UTF-8 son extraños de cadenas codificadas en ISO-8859-1 dentro de una base de datos MySQL. Para que no me vuelva suceder, y antes de asesinar a un usuario(luser), anoto lo siguiente.
ISO--UTF8
á => á
é => é
í => í
ó => ó
ú => ú
ñ => ñ


UPDATE unidades SET titulo = REPLACE (titulo, 'á', 'á');
UPDATE unidades SET titulo = REPLACE (titulo, 'é', 'é');
UPDATE unidades SET titulo = REPLACE (titulo, 'í', 'í');
UPDATE unidades SET titulo = REPLACE (titulo, 'ó', 'ó');
UPDATE unidades SET titulo = REPLACE (titulo, 'ú', 'ú')

Lo sé, no es el método más indicado, pero funciona!

lunes, 16 de marzo de 2009

MySQL, al final nos llevaremos bien!



Tanto MySQL va a acabar conmigo. La perfección no existe; eso quiero dejarlo claro. En mi afán por exprimir al máximo el rendimiento de MySQL, me pregunto cual será el mejor sistema de ficheros en GNU/Linux para este SGBD. La respuesta es sencilla: no lo sé. Por lo que veo ni yo ni nadie. Supongo por ahí tendremos a algún gurú que me posteará un comentario al respecto. Hasta entonces, dejo unos enlaces que me han parecido útiles:
Sistemas Ficheros
Ni fu ni fa, el Journaling por defecto
http://wagnerbianchi.blogspot.com/2009/02/choosing-better-filesystem-for-mysql.html

ReiserFS
http://osdir.com/ml/db.mysql.general/2002-07/msg00856.html

XFS
http://lists.mysql.com/benchmarks/127

MySQL Tuner
http://islaserver.com/articulos/sistemas/optimizar-mysql-en-servidores-linux-mysqltuner.html

Modelizado BBDD

MySQL WorkBench
http://dev.mysql.com/downloads/workbench/5.1.html

DBDesigner
http://www.fabforce.net/dbdesigner4/screenshots.php

Informacion General

http://cambrico.net/category/categorias/mysql

Consejos PHP-MySQL

http://www.programacion.com/php/noticia/1556/

viernes, 20 de febrero de 2009

mysqldump

Últimamente ando liado con un proyecto con MySQL y PHP, sobre GNU/Linux, por supuesto. A la hora de realizar backups mysql tiene una herramienta que "parece" que funciona muy bien : mysqldump. Sirva esta anotación como nota para futuras lecturas.

[root@localhost]mysqldump --debug-info --add-drop-table --opt --password=mipass --user=miuser multimedia > /home/alberto/backups-sql/multimedia-$FECHA.sql