Установка MySQL из репозитория Ubuntu
Установка MySQL из репозитория Ubuntu
MySQL есть в репозиториях Ubuntu. Он разбит на несколько пакетов.
- Для того чтобы установить MySQL сервер выполните команду:
sudo apt-get install mysql-server
При установке конфигурационный скрипт запросит пароль для администратора (root) базы данных.
-
Для того чтобы установить консольный клиент MySQL выполните команду:
sudo apt-get install mysql-client
-
Для того чтобы установить модуль для работы с MySQL в PHP выполните команду:
sudo apt-get install php5-mysql
Настройка
Конфигурация сервера MySQL содержится в файле /etc/mysql/my.cnf.
Доступ к серверу из сети
По умолчанию сервер MySQL принимает соединения только с локальной машины. Для того, чтобы разрешить подключаться к нему с других машин замените строку
bind-address = 127.0.0.1
на
#разрешить подключатся с любого хоста bind-address = 0.0.0.0 #разрешить подключатся только с указанного IP bind-address = 192.168.1.23
Кодировки
По-умолчанию в Ubuntu MySQL устанавливается с кодировкой latin1
. В этом можно убедиться посмотрев вывод запроса:
SHOW VARIABLES LIKE 'char%';
character_set_client latin1 character_set_connection latin1 character_set_database latin1 character_set_filesystem binary character_set_results latin1 character_set_server latin1 character_set_system utf8 character_sets_dir /usr/share/mysql/charsets/
В связи с этим, даже используя при работе с сервером команду
SET names utf8;
и используя при создании таблиц
...DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
невозможно добиться полной поддержки кодировки utf8:
character_set_client utf8 character_set_connection utf8 ... character_set_server latin1 ... character_sets_dir /usr/share/mysql/charsets/
Кодировка по-умолчанию все равно останется latin1, что неудобно и может привести к ошибкам.
Чтобы сервер сразу загружался с нужной кодировкой, необходимо отредактировать файл /etc/mysql/my.cnf:
sudo nano -w /etc/mysql/my.cnf
В секцию [mysqld]
добавьте следующие строки:
skip-character-set-client-handshake character-set-server = utf8 init-connect='SET NAMES utf8' collation-server=utf8_general_ci
Так же желательно установить кодировку для клиента и mysqldump. Для этого в секциях [client]
и [mysqldump]
необходимо добавить строчку:
default-character-set=utf8
Перезагрузите сервер MySQL:
sudo service mysql restart
После этого список переменных будет выглядеть так:
character_set_client utf8 character_set_connection utf8 character_set_database utf8 character_set_filesystem binary character_set_results utf8 character_set_server utf8 character_set_system utf8 character_sets_dir /usr/share/mysql/charsets/
0