Openfire 3.7 и кодировка UTF-8

Есть сервер openfire 3.7, работающий с базой данных mysql. По умолчанию таблицы в ней в кодировке latin1, кроме того сама админка Openfire по-умолчанию не дружит с UTF-8. Я использую FreeBSD, так что в Linux пути будут отличаться.

С базой данных в консоли mysql делаем вот что:

use наша-база;
alter database character set utf8;
alter database collate utf8_general_ci;


Теперь необходимо сделать массовое изменение кодировки таблиц. Формируем текст с нужными нам запросами:

SELECT CONCAT('ALTER TABLE ',TABLE_SCHEMA,'.',TABLE_NAME,' CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;') FROM information_schema.TABLES WHERE TABLE_SCHEMA = 'наша-база';


( Читать дальше )

CentOS 5.5: Установка веб сервера Cherokee + PHP5.3 + MySQL

Предисловие: CentOS установлен в нулевой конфигурации. Только стандартная base система. Голая консоль. Потребление оперативной памяти в пределах 37-40 Mb. После установки и запуска описываемых серверов потребление увеличилось до 57Mb.

( Читать дальше )
  • +5
  • 19 декабря 2010, 17:37
  • Mihael
  • 3

FreeBSD: установка MariaDB

Я использовал MariaDB (версия MySQL, развиваемая независимыми от Oracle разработчиками) версии 5.2.3 и FreeBSD 8.1.

Скачиваем исходники, распаковываем. Я пользуюсь bash, в sh данная команда не будет работать корректно:

CC=gcc CFLAGS="-O2 -fno-strength-reduce" CXX=gcc CXXFLAGS="-O2 -fno-rtti -fno-exceptions -felide-constructors -fno-strength-reduce" ./configure --prefix=/usr/local/mysql --enable-assembler
gmake
gmake install


( Читать дальше )

MySQL: 750000 запросов в секунду

Интересная статья о том, как выжать из MySQL максимум. На английском языке.

yoshinorimatsunobu.blogspot.com/2010/10/using-mysql-as-nosql-story-for.html

VertrigoServ - Бесплатный web-комплекс для Win

VertrigoServ — это высокопрофессиональный и простой в установке набор, состоящий из Apache (HTTP веб-сервер), PHP (скриптовый язык программирования), MySQL (многопоточная, многопользовательская СУБД), SQLite (встраиваемый движок баз данных), SQLiteManager (многоязычная веб-утилита для управления БД SQLite), PhpMyAdmin (утилита, написанная на PHP для администрирования БД MySQL) и Zend Optimizer (который увеличивает производительность запущенных процессов на 40для платформы Windows. C помощью удобного инсталлятора «всё-в-одном» все компоненты устанавливаются в одну директорию и работают сразу же после того как установка закончена. Деинсталлятор позволяет удобно удалять VertigoServ с жесткого диска. Всё это спроектировано так, чтобы занимать как можно меньше места и быть максимально гибким, поэтому отлично подходит для распространения по сети Интернет. VertigoServ хорош как для начинающих так и для более опытных пользователей.



( Читать дальше )

Массовое переименование таблиц базы данных MySQL

Полезный скрипт на php:

<?php  
$db_server = "localhost";    // hostname MySQL server  
$db_username = "username";   // username MySQL server  
$db_password = "password";   // password MySQL server  
$db_name = "database";       // database name  
  
$pattern = "pattern_";          // search string  
$new_pattern = "new_pattern_";  // replacement string,   
                                // can be empty  
 
// login to MySQL server  
$link = mysql_connect( $db_server, $db_username, $db_password);  
  
if (!$link)  
{  
  die('Could not connect: ' . mysql_error());  
}  
  
// list all tables in the database containing the search pattern  
$sql = "SHOW TABLES FROM `" . $db_name . "`";  
$sql .= " LIKE '%" . $pattern . "%'";  
  
$result = mysql_query ( $sql, $link );  
if (!$result)  
{  
  die("Invalid query: " . mysql_error( $link ));  
}  
  
$renamed = 0;  
$failed = 0;  
  
while ( $row = mysql_fetch_array ($result) )  
{  
  // rename every table by replacing the search pattern   
  // with a new pattern  
  $table_name = $row[0];  
  $new_table_name = str_replace ( $pattern, $new_pattern, $table_name);  
  
  $sql = "RENAME TABLE `" . $db_name . "`.`" . $table_name . "`";  
  $sql .= " TO `" . $db_name . "`.`" . $new_table_name . "`";  
  
  $result_rename = mysql_query ( $sql, $link );  
  if ($result_rename)  
  {  
    echo "Table `" . $table_name . "` renamed to :`";  
    echo $new_table_name . "`.\n";  
    $renamed++;  
  }  
  else  
  {  
    // notify when the renaming failed and show reason why  
    echo "Renaming of table `" . $table_name . "` has failed: ";  
    echo mysql_error( $link ) . "\n";  
    $failed++;  
  }  
}  
  
echo $renamed . " tables were renamed, " . $failed . " failed.\n";  
  
// close connection to MySQL server  
mysql_close( $link );  
?>


Нашел здесь.

Перенос движка LiveStreet на другой домен

Конечно же при таком переносе ссылки в постах и комментариях остаются старыми и изображения не отображаются. Исправить можно в базе вот так:

UPDATE `prefix_topic_content` SET `topic_text` = REPLACE(`topic_text`, "http://old.ru", "http://new.ru")

UPDATE `prefix_topic_content` SET `topic_text_short` = REPLACE(`topic_text_short`, "http://old.ru", "http://new.ru")

UPDATE `prefix_topic_content` SET `topic_text_source` = REPLACE(`topic_text_source`, "http://old.ru", "http://new.ru")

UPDATE `prefix_topic_comment` SET `comment_text` = REPLACE(`comment_text`, "http://old.ru", "http://new.ru")


Спасибо Mihael за совет!

Сброс пароля WordPress в MySQL

Боян, но все же:

mysql -uroot -p


use имя-базы;


Если забыли префикс:

show tables;


Меняем на пароль ‘password’:

UPDATE wp_users SET user_pass='5f4dcc3b5aa765d61d8327deb882cf99' WHERE ID = 1;

Настраиваем систему индексации и поиска Sphinx для LiveStreet

Отличный мануал по настройке для движка LiveStreet:

http://livestreet.ru/blog/dev_documentation/366.html

На Debian Lenny отличаются пути установки Sphinx:

Создаем индексы (я перед этим создал соответствующие директории):

/usr/local/bin/indexer --all


В /etc/crontab добавляем индексацию топиков и комментариев:

12 */3 * * * root /usr/local/bin/indexer --rotate topicsIndex
*/50 * * * * root /usr/local/bin/indexer --rotate commentsIndex


(означает индексацию топиков каждые 3 часа с запуском процесса на 12ой минуте часа и индексацию комментариев каждые 50 минут).

Запускаем командой:

/usr/local/bin/searchd --config /usr/local/etc/sphinx.conf


Эту же команду добавляем в /etc/rc.local.
  • 0
  • 01 сентября 2009, 18:43
  • Sergei_T
  • 1