Записи с метками MySQL
Перенос движка LiveStreet на другой домен
18 Ноябрь
Конечно же при таком переносе ссылки в постах и комментариях остаются старыми и изображения не отображаются. Исправить можно в базе вот так:
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")
Массовое переименование таблиц базы данных MySQL
18 Ноябрь
Полезный скрипт на 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 ); ?>
Нашел здесь.
Сброс пароля WordPress в MySQL
7 Октябрь
Боян, но все же:
mysql -uroot -p
use имя-базы;
Если забыли префикс:
show tables;
Меняем на пароль ‘password’:
UPDATE wp_users SET user_pass='5f4dcc3b5aa765d61d8327deb882cf99' WHERE ID = 1;
Настраиваем систему индексации и поиска Sphinx для LiveStreet
3 Сентябрь
Отличный мануал по настройке для движка 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.
Оптимизация настроек MySQL
2 Август
Неплохой набор shell скриптов для анализа настроек сервера MySQL: http://www.day32.com/MySQL/
Скрипт MySQL Performance Tuning Primer Script совместим с MySQL 3.23 – 5.1, значительно облегчает настройку MySQL сервера для больших нагрузок. Рекомендую
MySQL: замена значений в поле
16 Июль
Чтобы не забыть
Удобно заменять ссылки в каком-либо поле.
UPDATE имя-таблицы SET имя-поля = REPLACE(имя-поля, 'что ищем', 'на что заменяем');
Осторожно БОЯН! Сброс root пароля MySQL :)
26 Апрель
Смех смехом, но иногда приходится. И каждый раз вспоминаешь – как же я это делал?
Останавливаем MySQL:
sudo /etc/init.d/mysql stop
Запускаем MySQL в безопасном режиме:
Читать дальше >
