Все систематизировано и сведено в одну заметку с Резервное копирование (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';
Читать далее…
Upgrade from Ubuntu 11.04 to 11.10
Запускаем update manager (Меню — Система — Администрирования — Менеджер обновлений) или из консоли
$ update-manager
Жмем на кнопку «Обновить» и наслаждаемся.
Читать далее…
Рассмотрим несколько полезных советов по iptable — блокировка IP-адресов, которые имеет 20 и более одновременных запросов и бан пула адресов конкретной страны.
1. Блокировка IP-адресов, которые имеет 20 и более одновременных запросов (drop ip addresses)
Несколько вариантов определения таких ip-адресов:
$ netstat -an| grep :80 | grep -v 127.0.0.1 |grep -v 0.0.0.0 |awk '{ print $5 }' | sort|awk -F: '{print $1}' | uniq -c | awk '$1 > 20 {print $2}'
$ netstat -apn | grep TIME_WAIT |awk '{print $5}' |awk -F: '{print $1}' | sort | grep -v 127.0.0.1 | grep -v 0.0.0.0 | awk '{ if ($1 > 20) print $1 }'
пишем такой bash скрипт:
#!/bin/bash
ipban=’netstat -an| grep :80 | grep -v 127.0.0.1 |grep -v 0.0.0.0 |awk ‘{ print $5 }’ | sort|awk -F: ‘{print $1}’ | uniq -c | awk ‘$1 > 20 {print $2}’
for ip in $ipban
do
iptables -A INPUT -s $ip -j DROP
done
Файлы зон для стран-регионов с IP-диапазонами берем: тут
Читать далее…
При перезагрузке 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 -
Читаем еще:
Находим файлы и директории которые не модифицировались(изменялись) более чем 30 дней и удаляем их. Можно добавить это в cron.
$ crontab -e
# delete files oldest 30 days
0 22 * * * find /home/for_all -type f -mtime +30 -delete
# delete empty dirs
30 23 * * * find /home/for_all -type d -mtime +30 -exec rmdir {} \; >/dev/null 2>&1
Понадобилось мне уменьшить размер всех картинок в папке и также для уменьшения размера изменить качество картинки. Для этого должен стоять пакет ImageMagick.
$ apt-get install imagemagick
Запускаем в папке с изображениями:
$ convert -resize 1024x768 -quality 85 *.jpg foto%02d.jpg
соответственно размер подставляем какой нам нужен и качество. Этим вариантом я пользуюсь
Также можно использовать простейший скрипт:
#!/bin/bash
# cd /path/to/images
# подставляем свое данные
# out_size=»1024×768″
# out_quality=»80″
# for i in `ls *.jpg`
# do
# convert -resize $out_size -quality out_quality $i foto%02d.jpg
# done
Читать далее…