Немного о установке и настройке MySQL сервера на Ubuntu.
Сам процесс установки не является чем-то сложным (если не рассматривать сборку из исходников связки Apache + PHP + MySQL, хотя и это несложно :) ) устанавливаются пакеты и немного правятся файлы конфигурации.
Приступим к установке MySQL сервера. Если уже установлен пакет LAMP, этот шаг можно опустить
sudo apt-get install mysql-server mysql-client
Если необходимо подключатся к базе удалённо необходимо выполнить следующие действия:
sudo vim /etc/mysql/my.cnf
Находим строку:
bind-address = 127.0.0.1
Комментируем её, добавив # в начало строки:
# bind-address = 127.0.0.1
Сохраняем файл конфигурации пере запускаем MySql:
sudo /etc/init.d/mysql restart
Всё. Теперь к серверу MySQL можно подключаться извне.
Осталось создать пользователей которым разрешено удалённое подключение.
Запускаем консоль MySql и входим под :
mysql -uroot -p
Теперь создаём пользователя:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'remote_addr' IDENTIFIED BY 'password' WITH GRANT OPTION;
Вместо 'remote_addr' укажите адрес хоста с которого планируется подключаться или можно указать '%' тогда подключение будет разрешено с любого адреса, 'password' пароль пользователя.
Для непривилегированного пользователя вместо 'GRANT ALL PRIVILEGES' можно указать конкретные разрешённые операции, например:
GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES ON *.* TO 'root'@'remote_addr' IDENTIFIED BY 'password';
Так же можно ограничить доступ к база и таблицам указав вместо 'ON *.*' - 'ON table' или 'ON database.*' или 'ON database.table', где 'table' - имя таблица, а 'database' - имя базу данных.
Например, нужен пользователь без пароля работающий с существующими таблицами в базе новостей, который может создавать, удалять, обновлять и делать выборку.
GRANT SELECT, INSERT, UPDATE, DELETE on news.* TO news_manager@localhost;
Удаляются пользователи проще, чем создаются :). Например, если мы решим избавиться от пользователя 'news_manager'
DROP USER 'news_manager'@'localhost';
При желании можно установить phpMyAdmin, это упростит работу с управлением сервером, базами, таблицами и пользователями.
sudo apt-get install phpmyadmin
На этом всё.
1 комментарий:
Самая грамотная статья из 15-20 просмотренных
Отправить комментарий