Jump to content

Проблема с обновлением

Featured Replies

comment_2815

Создай любой php файл с одержимым:


<?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() );
$sql = "ALTER DATABASE `".$dbname."` DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_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() );
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);
?>
[/CODE]

Обратись к нему из браузера. Автор скрипта Ritsuka

comment_2817

Поддержка --> Управление базой данных --> Значения системных настроек

Посмотри, там у тебя всё в utf8 ?

comment_2824

Не найден файл команд

У меня тоже такое писал, когда удалил convert.php. Потом вернул этот файл обратно, сохранил базу через dumper.php и обратно тут же восстановил, после это форум обновился.
comment_2825

Содержимое файла dumper.php:


// Настройки по-умолчанию
$db_host = 'localhost';
$connection_charset = 'auto';
$database = '';
// Подключение конфигурации форума
if( is_readable( 'conf_global.php' )) {
include 'conf_global.php';
$db_host = $INFO['sql_host'];
$connection_charset = empty( $INFO['mysql_codepage'] ) ? 'cp1251' : $INFO['mysql_codepage'];
$database = $INFO['sql_database'];
}
else
{
die('Не удалось прочитать файл conf_global.php');
}
// Путь и URL к файлам бекапа
define('PATH', 'cache/');
define('URL', '/');
// Максимальное время выполнения скрипта в секундах
// 0 - без ограничений
define('TIME_LIMIT', 600);
// Ограничение размера данных доставаемых за одно обращения к БД (в мегабайтах)
// Нужно для ограничения количества памяти пожираемой сервером при дампе очень объемных таблиц
define('LIMIT', 1);
// mysql сервер
define('DBHOST', $db_host . ':3306');
// Базы данных, если сервер не разрешает просматривать список баз данных,
// и ничего не показывается после авторизации. Перечислите названия через запятую
define('DBNAMES', $database );
// Кодировка соединения с MySQL
// auto - автоматический выбор (устанавливается кодировка таблицы), cp1251 - windows-1251, и т.п.
define('CHARSET', $connection_charset );
// Кодировка соединения с MySQL при восстановлении
// На случай переноса со старых версий MySQL (до 4.1), у которых не указана кодировка таблиц в дампе
// При добавлении 'forced->', к примеру 'forced->cp1251', кодировка таблиц при восстановлении будет принудительно заменена на cp1251
// Можно также указывать сравнение нужное к примеру 'cp1251_ukrainian_ci' или 'forced->cp1251_ukrainian_ci'
define('RESTORE_CHARSET', 'forced->cp1251');
// Включить сохранение настроек и последних действий
// Для отключения установить значение 0
define('SC', 0);
// Типы таблиц у которых сохраняется только структура, разделенные запятой
define('ONLY_CREATE', 'MRG_MyISAM,MERGE,HEAP,MEMORY');
// Глобальная статистика
// Для отключения установить значение 0
define('GS', 0);
[/CODE]

comment_2846

Чтобы продолжить обновление, минуя стадию конвертирования, нужно проделать следующее:

Отредактировать файл:

/admin/setup/applications/upgrade/sections/overview.php

Там нужно найти:


$this->registry->output->setNextAction( 'convert' );
И заменить на:

$this->registry->autoLoadNextAction( 'apps' );
[/code]

[/color]

comment_2884

Чтобы продолжить обновление, минуя стадию конвертирования, нужно проделать следующее:

Отредактировать файл:

/admin/setup/applications/upgrade/sections/overview.php

Там нужно найти:



$this->registry->output->setNextAction( 'convert' );

И заменить на:


$this->registry->autoLoadNextAction( 'apps' );

Если база отличается по кодировке от нового форума, то будет полный звиздец, а не форум.

Поэтому делайте бекапы базы обязательно и потом сам бэкап перекодируйте в новую кодировку.

  • 1 year later...
comment_41649

Мне эти скрипты не помогли, что то не работают.

Отредактировал таблицы вручную через  такой SQL-запрос:

ALTER TABLE `db_name`.`table_name` CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;

 естественно изменив db_nam и table_name на свои.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.


Guest
Reply to this topic...

Recently Browsing 0

  • No registered users viewing this page.