You are here

Меняем кодировку базы MySQL

В связи с повальным переходом на UTF-8 порой возникает необходимость конвертировать базы данных. Если таблиц много, занятие не из весёлых. Опять на помощь приходит скрипт.

#!/bin/sh
# Put to file "altercharset" in Path /usr/local/sbin/altercharset
# and run from command line:  altercharset <DBNAME>
# Переводит все таблицы и саму базу в UTF-8
DBUSER="root"
DBPASS="password"
DBHOST="localhost"
 
DBNAME=$*
 
/usr/local/bin/mysql -u${DBUSER} -h ${DBHOST} -p${DBPASS} ${DBNAME} -Bse "ALTER DATABASE ${TABLENAME} DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci"
 
TABLES=`/usr/local/bin/mysql -u${DBUSER} -h ${DBHOST} -p${DBPASS} ${DBNAME} -Bse 'show tables;'`
for TABLENAME in ${TABLES}; do
	/usr/local/bin/mysql -u${DBUSER} -h ${DBHOST} -p${DBPASS} ${DBNAME} -Bse "ALTER TABLE ${TABLENAME} DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci, CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;"
done
Рубрика: 

Comments

Add new comment

CAPTCHA
Ответьте на простой вопрос, посмотрим, нужны ли нам ваши комментарии…
Image CAPTCHA
Enter the characters shown in the image.