Jump to content

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


Recommended Posts

Создай любой 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

Link to comment
Share on other sites

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

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

Link to comment
Share on other sites

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

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

Содержимое файла 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]

Link to comment
Share on other sites

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

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

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

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


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

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

[/color]

Link to comment
Share on other sites

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

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

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

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



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

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


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

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

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

Link to comment
Share on other sites

  • 1 year later...

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

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

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

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

Link to comment
Share on other sites

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

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

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

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...