пятница, 30 ноября 2012 г.

Вика, м-р Мускул и все-все-все

Сижу тут третий день, сочиняю скрипт для Вики. Вика - это не симпатичная молодая девушка, а наша локальная Wiki, в которую мы же сами статьи и пишем. Ну, как третий день... Начать с того, что логинов-паролей мне никто не оставил, сервер Вики крутится на Open Suse, которую я в глаза до сего дня не видел, база данных в MySQL, про которую я знаю только название, да к тому же всё это хозяйство работает в виртуальной машине. Так что развлекуха ещё та.

Сначала перетаскивал Вику к себе на машину, в свою виртуалку, чтобы "тренироваться на кошках", как завещал товарищ Балбес в фильме "Операция Ы". Из одной виртуалки в другую перетащить довольно просто, с реального железа было бы сложнее.

Ну и далее, пошёл вникать сначала в Сюзи, как там и чего. Методом битья головой о стену поставил Midnight Commander, стал искать, где какие файлы у Вики лежат, что сохранять нужно. Хорошо, что товарищи Гугл и Яндекс такие отзывчивые - у них чего хочешь спроси, они всегда ответят. Иногда, правда, отвечают херню какую-то, но, по крайней мере, не обзываются ламером, как живые люди. Живые люди почему-то сильно возбуждаются на чайниковые вопросы и предпочитают не ответить по существу, а всяко обозвать. Ну промолчи ты, если нечего сказать по сути вопроса! Нет, обязательно нужно написать в ответ что-нибудь вроде: "А на гугле забанили?" А вдруг забанили?

В общем, когда нашёл, как сделать дамп с MySQL базы, начал пробовать сохранить базу, изменить какую-нибудь статью, а потом восстановить её из дампа. Вот тут-то и подкрался песец, откуда не ждали. Просмотрел, что сохраняется дамп командой mysqldump, а восстанавливается другой - mysql! И сидел, как дурак, понять не мог, почему же у меня записи из архива не восстанавливаются. Под конец психанул, дропнул одну таблицу прямо из базы! И снова запустил, как я думал, восстановление из дампа. Ну, Вика мне и сказала, что таблицы нет, отвали от меня, извращенец.

Знаете, конечно, плохо быть по пояс деревянным. Зато пока ковырялся во внутренностях сервера, Мускуля и Вики - кое-чему научился. Ну хотя бы и таблицы из базы удалять SQL-запросами. Мало ли, вдруг диверсию надо будет устроить? А тут написал: mqsql drop table %tablename% from %dbname% - оно и дропнулось. Была таблица - нет таблицы.

Потом ещё много всякого весёлого было. И в именах файлов/каталогов путался. Не, ну это ж надо было придумать: база называется mwiki_mwikiadmin, лежит в каталоге mwiki! Другая называется mwiki_8, а лежит в каталоге mwiki-8! А я там убиваюсь, волосы из себя рву, понять не могу, почему у меня картинки из каталога mwiki_8 не копируются. А потому что нет такого каталога!

Так что "пишу скрипт" - это не совсем "пишу". Это много чего. В том числе кофе. Я такими темпами подсяду на кофе, как Н., которая, кажется, на кофе работает. Вот авто на бензине, а она на кофе :-)

Рабочий прототип скрипта я уже написал - база копируется, файлы-вложения копируются, всё это помещается в архив с текущей датой. Сейчас надо немножко навести красоту - оптимизировать код. И сделать копирование архива на другую машину по сети. Другой машиной будет мой рабочий компьютер. И красота! Вика будет защищена от повреждения и удаления информации.

Комментариев нет :

Отправить комментарий