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
Обратите внимание

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

Share this post


Link to post

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

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

Share this post


Link to post

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

Share this post


Link to post

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

Share this post


Link to post

Добрый день,

 

Возникла необходимость переконвертировать базу в 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

Добрый день,

 

Возникла необходимость переконвертировать базу в 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

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

 

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

php ./convertCharset.php

 

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

Share this post


Link to post

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

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

Share this post


Link to post

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

Share this post


Link to post

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

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

 

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

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

Share this post


Link to post

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...