Mamedu
mysql pasar de latin1 a utf8

01 de Enero, 1970

Con este método conseguimos convertir la base de datos y el código php a utf8 de forma rapida

En local

Realizado script para hacer la conversión lo más rápido posible

#!/bin/bash

## Primer paso es pasar el archivo con la copia de la base de datos a utf8
##
## pasamos el archivo como primer parámetro al script, y se generara un archivo
## con el mismo nombre + -utf8.sql
##
## Una vez obtenido el archivo comenta las lineas hasta el exit incluido.
##
## Nos situamos en el directorio del proyecto y ejecutamos el script para comenzar
## la transformación de los archivos php, js, html y .htacces

## Modificar codificación de base de datos

bd=totbisbalU8
usuario=root
pass=`contrasenya mysql`

fichero_latin="$1"
fichero_utf8="${1}-utf8.sql"

cp "$fichero_latin" "$fichero_utf8"
# iconv -f LATIN1 -t UTF8 "$fichero_latin" > "$fichero_utf8"

perl -pi -w -e 's/latin1/utf8/g;' "$fichero_utf8"

perl -pi -w -e 's/à/à/g;' "$fichero_utf8"
perl -pi -w -e 's/é/é/g;' "$fichero_utf8"
perl -pi -w -e 's/è/è/g;' "$fichero_utf8"
perl -pi -w -e 's/í/í/g;' "$fichero_utf8"
perl -pi -w -e 's/ó/ó/g;' "$fichero_utf8"
perl -pi -w -e 's/ò/ò/g;' "$fichero_utf8"
perl -pi -w -e 's/ú/ú/g;' "$fichero_utf8"
perl -pi -w -e 's/ñ/ñ/g;' "$fichero_utf8"
perl -pi -w -e 's/í‘/Ñ/g;' "$fichero_utf8"

mysql -u$usuario -p$pass -e "DROP DATABASE $bd;"
mysql -u$usuario -p$pass -e "CREATE DATABASE $bd CHARACTER SET utf8 COLLATE utf8_general_ci;"
mysql -u$usuario -p$pass $bd < "$fichero_utf8"

exit # Fin de la primera fase: Modificar codificación de base de datos

## Modificar códificación de archivos

find . -regex ".*\.\(js\|php\|html\|phtml\)" -printf "%p\n" | while IFS=":" read file ; do
echo - "$file"
iconv -f iso-8859-1 -t utf-8 "$file" > "${file}-utf8"
if [ $? = 0 ] ; then
mv "${file}-utf8" "$file"
else
echo - Error al pasar $file a utf8
echo
read -p "Continuar (s/n): " OPCION
[[ "$OPCION" = "n" ]] && exit
fi
done

## Modificar código html

find . -regex ".*\.\(php\|html\)" -printf "%p\n" | while IFS=":" read file ; do
echo - "$file"
sed -i -e "s/charset=iso-8859-1/charset=utf-8/g" "$file"
done

## Modificar .htaccess

find . -name '.htaccess' -printf "%p\n" | while IFS=":" read file ; do
echo - "$file"
sed -i -e "s/iso-8859-1/utf-8/g" "$file"
done

Si mysql os da un error al importar la base de datos, es necesario ejecutar mysql en una terminal y ejecutar las dos sentencias siguientes.

set global net_buffer_length=1000000;
set global max_allowed_packet=1000000000;

En el servidor

Vamos a phpmyadmin para modificarle la codificación a utf8

Importamos el archivo en utf8

En el código php especificarle la codificación mediante:

mysql_query("SET NAMES 'utf8'");

Justo después de crear con la conexión en php con la base de datos.

 

  Después de intentar una actualización de ubuntu 11.04 a 11.10 como siempre acabo haciendo la instalación directamente por errores que da. Así que mi recomendación es tener una partición del home y otra para el sistema y cuando se quiera hacer una actualización de versión instalarla formateando la partición raiz /. Siempre haciendo una copia de seguridad de toda la carpeta /etc que nos puede venir muy bien para restaurar co
Un conflicto resuelto en favor del espacio de trabajo eduardo@petit2:~/SERVIDOR/subversion/gcm/trunk/proyecto$ svn status!     C DATOS/idiomas    >   local borrar, incoming editar upon actualizar eduardo@petit2:~/SERVIDOR/subversion/gcm/trunk/proyecto$ svn resolve --accept=working DATOS/idiomasSe resolvió el conflicto de «DATOS/idiomas»  ...
Con este método conseguimos convertir la base de datos y el código php a utf8 de forma rapida En local Realizado script para hacer la conversión lo más rápido posible #!/bin/bash## Primer paso es pasar el archivo con la copia de la base de datos a utf8#### pasamos el archivo como primer parámetro al script, y se generara un archivo## con el mismo nombre + -utf8.sql#### Una vez obtenido el archivo comenta las lineas hasta el exit incluido.#### Nos situ
Lanzar un comando: mysql -pxxxx -e 'describe Playlists ;' Mp3Kult >> INF_PM3KULT.TXT Ver tablas: show tables ; Ver composición de tablas: describe <tabla> ; Copias de seguridad: mysqldump -uNOMBREDEUSUARIO -pPASSWORD -hHOST NOMBREBD > fichero.sql restaurar: mysql -uUSUARIO -pPASSWORD -hHOST BD < fichero.sql ATENCIÓN: Los usuarios y permisos no están incluidos Búsquedas: mysql -e 'Select Name, Path from Mp3s where Name like "%tres%" or P..
find -type f -print0 | xargs -0 file --mime-encoding...
Midbight Commander Combinaciones de teclas más usadas Alt + ENTER Copia el archivo seleccionado a la linea de comandos Esc + TAB Autocompleta la shell como en bash  Ctrl + o  Muestra la salida de la orden anterior ejecutada en consola  ins / Ctrl + t Seleccionar  Alt + t Cambio rapido entre las diferentes vistas posibles  Alt + o Muestra el directorio sobre el que estamos, en el otro panel Alt + i Muestra el di...
  UPDATE ps_product_lang SET description_short = description  ...
Screen nos permite trabajar en un ordenador en red ysin cerrarse los procesos en marcha cuando lo abandonemos. Lanzar screen con identificador de sesión screen -t Para salir de screen sin cerrar el programa CTRL + a + d Recuperamos sesión screen -R Ver como va nuestro proceso screen -t bit -X hardcopy && cat hardcopy.0 Teclas Control a y S Dividir ventana Control a y Control i Cambiar entre ventanas Control a + Aumentar ventana Cont...

Usuario:

Contraseña:


ojo.gif
www.mamedu.com
Webmaster