Как удалить домен с sqlite базы (панель управления ISPManager5 + Centos)
Инструкция по удалению домена с sqlite базы данных ispmgrnode.db и powerdns. Панель управления ISPManager5 + Centos.
Есть задача - нам необходимо удалить записи о домене с базы данных ispmgrnode.db.
Рассмотрим алгоритм решения данной задачи детально, по пунктам:
1) Устанавливаем sqlite. Используем для этого менеджер пакетов yum:
yum install sqlite-isp
2) Открываем базу данных ispmgrnode.db:
/usr/local/mgr5/sbin/sqlite3 /usr/local/mgr5/etc/ispmgrnode.db
3) Просмотрим список таблиц с помощью команды .tables
4) Ищем упоминания нужного домена в таблицах базы. Рассмотрим пример поиска в таблице domain:
select * from domain where name='site.com';
Пример вывода данной команды будет таким:
920|site.com| site.com|586|master
где site.com – это название нашего домена, который нужно удалить
domain – таблица, в которой производили поиск
5) Удаляем запись о домене с таблицы domain:
delete from domain where name='site.com';
Пункт 3 и 4, собственно говоря, можно заменить другим. Так поиск таблиц, в которых упоминается домен, можем сделать, создав дамп базы данных ispmgrnode.db и поиск выполнить по этому дампу:
/usr/local/mgr5/sbin/sqlite3 /usr/local/mgr5/etc/ispmgrnode.db .dump > /tmp/dump.sqlite
Также упоминания о домене необходимо будет удалить с базы данных powerdns:
1) Определяем пароль пользователя базы powerdns:
cat /etc/pdns/pdns.conf | grep gmysql-password
Получим такой вывод:
gmysql-password=,f3p7fGjdthLNc
2) Заходим в базу данных powerdns:
mysql -upowerdns -p,f3p7fGjdthLNc powerdns
где powerdns - пользователь базы данных powerdns
,f3p7fGjdthLNc – пароль, который мы определили в пункте 1
3) Проверяем, есть ли записи о домене в таблице records нашей базы:
select * from records where name='site.com';
4) Если записи найдены, удаляем их:
delete from records where name='site.com';
5) Проверяем наличие записей о домене в таблице domains базы данных powerdns:
select * from domains where name='site.com';
6) При наличии записей в таблице domains, удаляем их:
delete from domains where name='site.com';
Все, наша задача по удалению записей о домене успешно выполнена. Компания HyperHost желает
Вам приятной работы!