Перейти к содержанию

Конвертирование кодировки базы данных из cp1251 в utf8


Рекомендуемые сообщения

Это тема поддержки статьи: Конвертирование кодировки базы данных из cp1251 в utf8.

Здесь вы можете обсудить все вопросы, связанные с этой статьёй.

Дата добавления статьи: 25 Май 2012 - 02:48

Дата обновления статьи: 26 Январь 2015 - 11:51

Ссылка на комментарий
Поделиться на другие сайты

  • 5 месяцев спустя...

Вы спасли наш форум, огромное спасибо! :good:

Ссылка на комментарий
Поделиться на другие сайты

  • 3 месяца спустя...
  • 4 месяца спустя...

Вложения нет, скриншота нет. Администрация, поправьте, пожалуйста.

Ссылка на комментарий
Поделиться на другие сайты

Файлик приаттачил. 

Ссылка на комментарий
Поделиться на другие сайты

Respected, спасибо.

 

На самом деле делать перекодировку через дамп это глупость. Есть скрипт, который перекодирует БД без дампа. Просто положить его в корень форума и запустить.



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

<?php
// Database info

include("conf_global.php");

$dbhost = $INFO['sql_host'];
$dbuser = $INFO['sql_user'];
$dbpass = $INFO['sql_pass'];
$dbname = $INFO['sql_database'];

//---------------

header('Content-type: text/plain');

$dbconn = mysql_connect($dbhost, $dbuser, $dbpass) or die( mysql_error() );
$db = mysql_select_db($dbname) or die( mysql_error() );

$timer['start'] = microtime(true);

$sql = "ALTER DATABASE `".$dbname."` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci";
$result = mysql_query($sql) or die( mysql_error() );
print "Database changed to UTF-8.n";

$sql = 'SHOW TABLES';
$result = mysql_query($sql) or die( mysql_error() );

$sql = array();
while ( $row = mysql_fetch_row($result) )
{
    $table = mysql_real_escape_string($row[0]);
    $sql   = "ALTER TABLE {$table} DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci, CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci";
    mysql_query($sql) or die( mysql_error() );

    print "{$table} changed to UTF-8.n";
}

mysql_close($dbconn);
$timer['end'] = microtime(true) - $timer['start'];
echo "nPage generated in ". round( $timer['end'], 4 );
?>
Ссылка на комментарий
Поделиться на другие сайты

  • 2 года спустя...

Вопрос,  при неудачном стечении обстоятельств, к каким проблемам это может привести?

Форум живой http://forums.windofluck.com/

на нем много информации  и прочего, как можно провести перекодировку наиболее безопасным способом?

Ссылка на комментарий
Поделиться на другие сайты

Только что, Trazzy сказал:

Вопрос,  при неудачном стечении обстоятельств, к каким проблемам это может привести?

Форум живой http://forums.windofluck.com/

на нем много информации  и прочего, как можно провести перекодировку наиболее безопасным способом?

Конечно сделать дамп. Если хочешь выйти из любой ситуации без потерь - делай дампы.

Ссылка на комментарий
Поделиться на другие сайты

1 час назад, ZeRik сказал:

Конечно сделать дамп. Если хочешь выйти из любой ситуации без потерь - делай дампы.

Само собой, бэкап  сделать обязательно. Есть ли штатные IP.Board'ские решения для такой ситуации. Проблема еще в том, что веб админ уволился, пытаемся разобраться.  

Ссылка на комментарий
Поделиться на другие сайты

1 минуту назад, Trazzy сказал:

Само собой, бэкап  сделать обязательно. Есть ли штатные IP.Board'ские решения для такой ситуации. Проблема еще в том, что веб админ уволился, пытаемся разобраться.  

Какие там способы? Не будет таблицы - подскажет как создать необходимую. Не будет полей - тоже самое. Если ты запоришь базу - оно тебе не поможет. Да и процедура это немудреная, не думаю что возникнут с этим проблемы.

Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...