Проект phpMyAdmin появился на свет 9 сентября 1998 года, когда Тобиас Ратшиллер (Ratschiller) выпустил версию 0.9.0. За прошедшие полтора десятилетия phpMyAdmin превратился в один из основных инструментов для администрирования MySQL и других MySQL-подобных баз данных.
Каждый месяц на официальном сервере регистрируется сотни тысяч скачиваний, а еще больше пользователей берут упакованную инсталляцию из пакетного менеджера.
$ apt-get install phpmyаdmin
$ yum install phpmyadmin
К созданию phpMyAdmin причастны 669 разработчиков и усилиями сообщества интерфейс phpMyAdmin переведён на 72 языка.
За 15 лет количество строк кода в phpMyAdmin увеличилось с 13 496 до 508 761 строк.
PhpMyAdmin неоднократно удостаивался различных наград, в том числе совсем недавно получил титул «MySQL-приложение 2013 года» на церемонии MySQL Community Awards.
Читаем еще:
Почтовый сервер — связка Exim + Dovecot + PostfixAdmin
Поднимем собственный почтовый сервера на Debian 6.0.4 «Squeeze» — главным компонентом которого будет MTA Exim, который будет заниматься приемом-отправкой почты и скармливанием её различным фильтрам и MUA Dovecot. В интеренете очень много хвалебных отзывов о его «гибкости и надёжности, производительности и безопасности», сам с ним я встречаюсь в первые, поэтому если что сильно не пинайте.
Для начало настроим связку MTA Exim + MUA Dovecot + веб-админка PostfixAdmin (сам админка для Postfix, но это непринципиально, так как проста и удобна), потом подключим к нашей связке SpamAssassin и ClamAV для проверки на спам и вирусы соответственно.
В базовой комплектации Debian Exim идёт в «лёгкой» сборке (exim4-daemon-light),но для того, что б использовать расширенные возможности (просмотр данных LDAP, sqlite, PostgreSQL и MySQL, аутентификацию SASL и SPA SMTP, модуль сканирования содержимого для интеграции антивирусных сканеров и spamassassin)
необходим heavy-пакет — exim4-daemon-heavy.
Сюда до кучи ставим остальные пакеты, которые нам понадобиться, предполагаю что MySQL и Apache …
Прошу прошения допишу чуть попозже.
Читать далее…
Скрипт, который может в выявлении проблемных мест конфигурации сервера mysql, и даст полезные советы по оптимизации. Скрипт написанный на языке perl и не требует инсталляции. Его просто нужно скачать и запустить:
$ cd /usr/local/bin
$ wget http://mysqltuner.pl/mysqltuner.pl
$ perl mysqltuner.pl
>> MySQLTuner 1.2.0 — Major Hayden
>> Bug reports, feature requests, and downloads at http://mysqltuner.com/
>> Run with ‘—help’ for additional options and output filtering
Please enter your MySQL administrative login: root
Please enter your MySQL administrative password:
Скрипт попросит имя и пароль MySQL администратора, после чего выведет результаты своей работы.
Замечу, что рекомендации утилиты mysqltuner будут более оптимальны, чем дольше работает без перезагрузок сервер mysql, о чем и предупреждает скрипт, минимальный интервал в общем то должен составлять не менее 24 часов:
«MySQL started within last 24 hours — recommendations may be inaccurate»
оф. сайт MySQLTuner
Читаем еще:
Все систематизировано и сведено в одну заметку с Резервное копирование (backup) баз MySQL, Работа с MySQL из командной строки, Пару способов как получить доступ к СУБД MySQL когда забыл пароль от root’a, Подключения и управления СУБД MySQL. Так же многое было скопировано отсюда Блог о Linux, Python, Vim и другом здоровом образе жизни | proft.me.
Управление пользователями
Список пользователей:
mysql> SELECT User,Host FROM mysql.user;
Список прав у пользователя root@localhost
mysql> SHOW GRANTS FOR root@localhost;
Создание нового пользователя:
mysql> CREATE USER 'user'@'localhost' IDENTIFIED BY 'secret';
Добавим выбранные привилегии для всех таблиц БД dbname пользователю ‘user’@'localhost’
mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,ALTER,INDEX ON dbname.* TO 'user'@'localhost';
Добавим все привилегии для всех таблиц БД dbname пользователю ‘user’@'localhost’
mysql> GRANT ALL PRIVILEGES ON dbname.* TO 'user'@'localhost';
Удаление прав пользователя ‘user’@'localhost’ для БД dbname:
mysql> REVOKE ALL ON dbname.* FROM 'user'@'localhost';
Читать далее…
При перезагрузке MySQL увидел такую надпись:
Stopping MySQL database server: mysqld.
Starting MySQL database server: mysqld.
Checking for corrupt, not cleanly closed and upgrade needing tables..
Пробрало любопытство и решил узнать че эта такое, покапавшись на просторах интернета узнал, что это идет ни как ошибка, а больше как предупреждения. Предупреждения о том что не будет проверяется на наличие поврежденный таблиц, на наличие не закрытых таблиц и наличие не обновленных таблиц, если вы обновили версию MySQL.
В Debian этим занимается скрипт /etc/mysql/debian-start. Открываем его:
$ nano /etc/mysql/debian-start
# The following commands should be run when the server is up but in background
# where they do not block the server start and in one shell instance so that
# they run sequentially. They are supposed not to echo anything to stdout.
# If you want to disable the check for crashed tables comment
# «check_for_crashed_tables» out.
# (There may be no output to stdout inside the background process!)
echo «Checking for corrupt, not cleanly closed and upgrade needing tables.»
(
upgrade_system_tables_if_necessary;
check_root_accounts;
check_for_crashed_tables;
) >&2 &
По умолчанию он отключен. Что дает его включения — будет проводиться проверка и перезапуск будет выполнять медленнее, чем с отключенным скриптом.
Для успокоения своей души можно принудительно проверить вcе таблицы:
$ mysqlcheck --check-upgrade --all-databases --auto-repair -u root -p
или
$ mysql_upgrade --force -u root -
Читаем еще:
Резервное копирование баз MySQL mysql backup ubuntu
Попался мне на просторах интернета один из скриптов для создания бэкапов баз данных, в чем его плюс — создает отдельный архив под каждую базу данных, в отличии от стандартного mysqldump с ключем —all-databases который пишет все базы в один файл для меня получается не совсем правильный бэкап, т.е мне это ни подходит.По мне лучше каждая база -отдельный файл.
В любом случаи желательно сделать пользователя от которого будем делать бекапы, из прав дадим ему права на просмотр баз,SELECT и Lock Tables, я приведу пример как создать из командной строки:
$ mysql -pПАРОЛЬ
-p, —password=[password] – Пароль пользователя, для соединения с сервером MySQL. Не должно быть пробела между -p и паролем.
-u, —user=[user] — Имя пользователя для соединения с сервером MySQL. Необязательно, по умолчанию используется такое же, как ваш логин.Используется если логин отличается от имени пользователя для соединения с сервером MySQL.
$ mysql> CREATE USER ‘back’@'localhost’ IDENTIFIED BY ’123456′;
Query OK, 0 rows affected (0.02 sec)
$ mysql> GRANT SELECT , LOCK TABLES ON * . * TO ‘back’@'localhost’ IDENTIFIED BY ’123456′;
Query OK, 0 rows affected (0.00 sec)
для примера пользователь back и его пароль 123456 (mysql backup ubuntu)
Читать далее…