|
Использование разделов MySQL для разбиения таблицы по дням месяцам и годам |
Автор: gara
[комментарии]
|
| Приходится иметь дело с таблицами, которые содержат редко (или никогда) обновляемые данные, такие как логи. Некоторые таблицы чистятся, некоторые хранят записи "вечно". Чтобы уменьшить нагрузку на диск и ФС, придумали такую вещь как partitioning (Cекционирование).
... [Слишком большой объем текста. Скрыт. Для просмотра см. продолжение]
|
|
|
|
|
Автозаполнение столбцов для автоинкремента в MySQL |
Автор: Lennotoecom
[комментарии]
|
| Задача:
В существующую таблицу добавить столбец, автоматически заполнить его от 1 до количества строк в таблице, сделать его ключевым с автоинкрементом.
... [Слишком большой объем текста. Скрыт. Для просмотра см. продолжение]
|
|
|
|
|
Как обновить MySQL 5.0 до MySQL 5.1 в Gentoo Linux (доп. ссылка 1) |
Автор: Dennis Yusupoff
[комментарии]
|
| Возникла необходимость обновить MySQL 5.0 до MySQL 5.1 в Gentoo с минимальным перерывом в работе,
описываю свой опыт. Вполне допускаю, что будет для гуру банальностью, тем не менее, как "напоминалка"
будет полезна. Хотя бы мне самому :)
Основой послужили [[http://www.pkdavies.co.uk/blog/gentoo-mysql-5-1-upgrade статья Peter Davies'a]] и руководство [[http://dev.mysql.com/doc/refman/5.1/en/upgrade.html MySQL Upgrading MySQL]].
... [Слишком большой объем текста. Скрыт. Для просмотра см. продолжение]
|
|
|
|
|
Синхронизация файлов и содержимого БД MySQL на резервный сервер (доп. ссылка 1) |
Автор: neiro
[комментарии]
|
| Есть два сервера под Linux/FreeBSD: СУБД MySQL + некое приложение,
задача - синхронизировать БД и данные.
... [Слишком большой объем текста. Скрыт. Для просмотра см. продолжение]
|
|
|
|
|
Быстрй перенос лог-файлов в MySQL |
Автор: Alexey Lazarev
[комментарии]
|
| Наверняка, каждый сталкивался с задачей переноса лог-файлов из текстовых файлов в различные БД.
И, наверняка, каждый столкнувшийся начинал писать собственные скрипты под это дело.
Причем большинство виденных мной скриптов основывались на построчном чтении/переносе данных.
Данный способ, конечно, хорош и имеет право на существование, но, к сожалению не очень быстр.
... [Слишком большой объем текста. Скрыт. Для просмотра см. продолжение]
|
|
|
|
|
Смена mysql пароля для пользователя debian-sys-maint. (доп. ссылка 1) |
Автор: Heckfy
[комментарии]
|
| Столкнулся с тем, что система отказалась проапгрейдиться посредством apt,
так как не удается завершить демон mysql.
Оказалось, что запуск и остановку демона делает пользователь базы данных debian-sys-maint.
... [Слишком большой объем текста. Скрыт. Для просмотра см. продолжение]
|
|
|
|
|
Дамп больших InnoDB таблиц в MySQL (доп. ссылка 1) |
Автор: ducea.com
[комментарии]
|
| При дампе больших (10 Gb) InnoDB таблиц в MySQL через mysqldump
на время операции таблица оказывается заблокированной.
Для того чтобы избежать блокировки и нарушения целостности нужно использовать
ключ --single-transaction:
mysqldump --single-transaction --quick very_large_db > bakup_of_db.sql
|
|
|
|
|
Пример работы с MySQL в bash скриптах |
Автор: Luc!f3r
[комментарии]
|
| Пример1:
... [Слишком большой объем текста. Скрыт. Для просмотра см. продолжение]
|
|
|
|
|
Пример полнотекстового поиска в mySQL (доп. ссылка 1) |
Автор: MEDBEDb
[обсудить]
|
| CREATE TABLE table (
id INT UNSIGNED AUTO_INCREMENT NOT NULL PRIMARY KEY,
column TEXT,
FULLTEXT (column)
);
SELECT * FROM table WHERE MATCH (column) AGAINST ('информация');
AGAINST ('форма содержание') - все выражения, содержащие хотя бы одно из слов.
AGAINST ('+форма +содержание') - оба слова.
AGAINST ('+форма содержание') - искать "форма", при "содержание" больший релевант.
AGAINST ('+форма -содержание') - "форма" без "содержание".
AGAINST ('форма*') - "форма", "формат", "формация"
AGAINST ('"форма или содержание"') - жестко по фразе
|
|
|
|
|
Как в MySQL обеспечить правильную сортировку данных в кодировке cp1251. |
[комментарии]
|
| MySQL должен быть собран с ключами:
./configure --with-charset=koi8_ru --with-extra-charsets=all
Далее, сразу после каждого соединения с базой нужно использовать оператор:
SET CHARACTER SET cp1251_koi8
Если данные в cp1251 уже в базе, их нужно поместить в базу вновь.
|
|
|
|
|
Как сделать таблицу Exel из таблицы MySQL |
Автор: Sergei A. Merkulov
[комментарии]
|
| #!/usr/local/bin/perl
use DBI;
$table = "table"; $db = "base"; $db_serv = "192.168.0.1"; $user = "ser"; $passwd = "ser";
$c = DBI->connect("DBI:mysql:$db:$db_serv", $user, $passwd);
$statement = "select count(*) from $table";
$cc = $c->prepare($statement);
$ccc = $cc->execute;
@row = $cc->fetchrow_array;
$n = $row[0];
$statement = "select * from $table";
$cc = $c->prepare($statement);
$ccc = $cc->execute;
open F, "$ARGV[0]";
for ($i=0; $i<$n; $i++) {
@row = $cc->fetchrow_array;
print F "$row[0];$row[1];$row[3]\n";
}
Запускаем скрипт:
./mysql_2_exel.pl file
После этого можно открыть файл 'file' экселем.
|
|
|
|
|
|
Использование одного автоинкрементального счетчика для нескольких таблиц в MySQL (доп. ссылка 1) (доп. ссылка 2) |
[комментарии]
|
| Решение задачи сохранения единого для нескольких таблиц автоинкрементального счетчика.
... [Слишком большой объем текста. Скрыт. Для просмотра см. продолжение]
|
|
|
|
|
насчет "Как ограничить число элементов выдаваемых SELECT в MySQL" |
Автор: Vovik Alyekhin
[обсудить]
|
| параметры limit действуют с точностью до наоборот.
первый параметр с какой записи, а второй сколько.
По крайней мере для mysql.
MC: Интересно, для PostgreSQL: "LIMIT { count | ALL } [ { OFFSET | , } start ]]"
|
|
|
|