Jump to content
Дизайн и модификация IPS Community IPBSkinsBETA
Search In
  • More options...
Find results that contain...
Find results in...
Sign in to follow this  
Zero108

Скрипт для конвертирования кодировки базы данных

Recommended Posts

В предыстории не работал нормально поиск по русским словам.

 

Техподдержка посоветовала переконвертировать базу данных в 'real' utf8.

 

Скрипт и мануал в аттаче.

 

Скрипт уникален тем, что, со слов автора, может конвертировать базу данных из любой кодировки в любую другую, хотя автор скрипта и оговаривается, что скрипт тестировался только для конвертации базы данных в кодировку utf8.

 

Преимуществом скрипта также является то, что он производит запись непосредственно в новую базу данных, ничего не меняя в старой.

 

Вкратце процесс использования скрипта, который подробно описан в прилагаемой к скрипту инструкции, выглядит так:

 

1. Скрипт заливается в корень форума. В нем прописываются некоторые параметры: имя пользователя новой базы данных, имя новой базы данных, пароль новой базы данных и пр.

2. Руками создается новая база данных, к которой добавляется пользователь (можно от старой базы данных) и пароль.

3. По ssh запускается скрипт, который конвертирует старую базу данных в новую базу данных, ничего не меняя в старой базе данных.

4. В конфигурационном файле conf_global.php прописываются данные для соединения с новой базой данных вместо данных для соединения со старой базой данных. Также в конфигурационном файле может потребоваться указать кодировку соединения, например,

 

$INFO['sql_charset']= 'utf8';

 

Предыстория для знающих английский язык.

Место, где изначально живет скрипт.

Конвертатор базы данных.rar

Edited by Zero108

Share this post


Link to post
Share on other sites
Обратите внимание

"Board url", указанный вами в профиле, некорректен, либо недоступен на данный момент. Пожауйста, заполните его, потому что он скорее всего потребуется при диагностике вашей проблемы.

Share this post


Link to post
Share on other sites

4. В конфигурационном файле conf_global.php прописываются данные для соединения с новой базой данных вместо данных для соединения со старой базой данных.

На самом деле в conf_global.php остаются данные для подключения к старой базы, а в конвертере прописываются данные для новой базы ($host, $user, $pass, $database)

Share this post


Link to post
Share on other sites

Вы пишите про пункт 3. За пунктом 3 идет п.4, где указаны окончательные настройки, чтобы подключить форум к уже сконвертированной базе.

Share this post


Link to post
Share on other sites

Но если так, то да.

Share this post


Link to post
Share on other sites

Добрый день,

 

Возникла необходимость переконвертировать базу в utf8, скачал скрипт, все сделал по инструкции, но к сожелению выдает ошибку.

Кто-то сталкивался с подобной ошибкой?

 

root@server:~# /usr/bin/php /home/user/www/glori.org.ua/convertCharset.php
Starting...
PHP Warning:  require_once(./initdata.php): failed to open stream: No such file or directory in /home/user/www/glori.org.ua/convertCharset.php on line 15
PHP Fatal error:  require_once(): Failed opening required './initdata.php' (include_path='.:/usr/share/php:/usr/share/pear') in /home/user/www/glori.org.ua/convertCharset.php on line 15

 

Права всем файлам дал.

Edited by s.chornyi

Share this post


Link to post
Share on other sites

Добрый день,

 

Возникла необходимость переконвертировать базу в utf8, скачал скрипт, все сделал по инструкции, но к сожелению выдает ошибку.

Кто-то сталкивался с подобной ошибкой?

 

root@server:~# /usr/bin/php /home/user/www/glori.org.ua/convertCharset.php
Starting...
PHP Warning:  require_once(./initdata.php): failed to open stream: No such file or directory in /home/user/www/glori.org.ua/convertCharset.php on line 15
PHP Fatal error:  require_once(): Failed opening required './initdata.php' (include_path='.:/usr/share/php:/usr/share/pear') in /home/user/www/glori.org.ua/convertCharset.php on line 15

 

Права всем файлам дал.

 

в 15 строке файла convertCharset.php есть вызов initdata.php из текущего, по отношению к convertCharset.php, каталога

оно там ТОЧНО есть?

если есть, то права там 644 или 666?

на "include_path='.:/usr/share/php:/usr/share/pear'" не обращай внимание, оно всегда ищет в каталогах по-умолчанию, если не находит нужный файл в нужном каталоге

Share this post


Link to post
Share on other sites

можно ещё попробовать запустить так:

 

cd /home/user/www/glori.org.ua/

php ./convertCharset.php

 

естественно, если рядом с convertCharset.php лежит initdata.php

Share this post


Link to post
Share on other sites

Сталкивался с аналогичной проблемой. Нужно файл convertCharset.php

Правильно создавать не менять руками txt на php, а через нотепад или подобные программы.

Share this post


Link to post
Share on other sites

Бывает такое, что 2ой раз нельзя запускать скрипт, то базу испортите, лучше бекап поднять и повторить процедуру.

Share this post


Link to post
Share on other sites

Сталкивался с аналогичной проблемой. Нужно файл convertCharset.php

Правильно создавать не менять руками txt на php, а через нотепад или подобные программы.

 

ведь ясно написано: Failed opening required './initdata.php'

оно не может открыть инитдату, а не convertCharset.php

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...