Показаны сообщения с ярлыком mysql. Показать все сообщения
Показаны сообщения с ярлыком mysql. Показать все сообщения

понедельник, 25 мая 2009 г.

MySQL DownGrade on Cpanel Servers (даунгрейд mysql)

Ну что ж :) Приношу извинения, что долго не обновлял блог.
Если честно, то работы было "труба", ничего не успевал :)

Итак, приступим. Вы наверно спросите, зачем понижать версию mysql, если чем новее версия, тем лучше? Все можно просто объяснить, если Вы пишите скрипты с "нуля", то да, чем новее версия тем лучше, чтоб можно было писать под mysql 5. Но! Если скрипты уже написаны под 4.х? Либо если это новый сервер, и нужно перенести несколько учетных записей с другого сервера, где уже стоит 4.х? Вот поэтому мы и делаем даунгрейд мускула до 4.х. Я покажу на примере 4.1, как сделать понижение версии с 5.0 до 4.1 на серверах с панелью управления cPanel.

Проверяем, какая версия установлена на данный момент:
rpm -qa | grep -i mysql-

четверг, 18 декабря 2008 г.

Скрипт MySQL Watch

Довольно часто возникает такая ситуация, когда процесс MySQL грузит всю систему, а пока "залогинишся" на сервер, пройдет кучу времени, и нагрузка может уже упасть. По-этому сложно выловить пользователя злоупотребляющего MySQL ресурсами.

пятница, 19 сентября 2008 г.

MySQL, кодировка и вопросики вместо русских букв

В предыдущей статье о русификации MySQL было написано как заставить mysql корректно работать с кодировкой cp1251.

Но как быть если предположим есть два сервера и на одном из них mysql в cp1251 а на другом - в стандартной кодировке?

Для решения этой проблемы предлагаем два очень простых скрипта - первый создает дампы всех баз, за исключением системных, а второй - заменяет существующие базы с неправильной кодировкой на правильную. Скрипт предназначен прежде всего для WHM/cPanel но в принципе пойдет на любых серверах.

Сначала создадим архив с дампами баз mysql с помощью первого скрипта:


for i in `mysqlshow | grep -v + | grep -v '| Databases |' | cut -d ' ' -f2 | grep -v horde| grep -v mysql | grep -v eximstats`; do mysqldump -f --compatible=mysql40 $i > $i.sql; done; tar czf dump1251.tgz *.sql; rm *.sql


В результате будет создан файл dump1251.tgz - архив со всеми дампами sql в нормальной кодировке. Его необходимо перенести на другой сервер и восстановить с помощью второго скрипта:

for i in `ls *.sql`;do b=`basename $i .sql`;yes | mysqladmin drop $b; mysqladmin create $b; mysql --default-character-set=cp1251 $b


После этого вместо вопросительных знаков появятся русские буквы. Приятной работы :)