Установка и настройка MySQL на FreeBSD

Для установки MySQL сервера нам сперва потребуется добавить опцию в /etc/make.conf. Эта опция заставит порт MySQL скомпилироваться с под­держкой всех возможных наборов символов, а не только с базовым лати­ницей.

% echo ‘WITH_XCHARSET=all’ » /etc/make.conf

После этого переходим в директорию порта и запускаем make install.

%cd /usr/ports/databases/mysql50-server
%make install

Настройка mysql

Мы немного перенастроим mysql, так чтоб он использовал бы базу данных находящуюся в /data/mysql

Для этого сперва нужно создать директорию /data/mysql и выставить на нее правильные разрешения.

%mkdir /data/mysql
%chown mysql:mysql /data/mysql
%chnod go-rwx /data/mysql

Автозапуск mysql

Эти настройки разрешат запуск mysql во время загрузки системы и укажут правильную директорию, где размещать файлы.

%echo ‘mysql_dbdir=»/data/mysql”’ >> /etc/rc.conf
%echo mysql_enable=»YES»’ >> /etc/rc.conf

При первом запуске в директории /data/mysql будут созданы необходимые для работы сервера поддиректории и файлы.

Запуск и остановка mysql

Для запуска MySQL сервера стоит набрать команду:

/usr/local/etc/rc.d/mysql-server forcestart

Для оставиоки соотстветствешю:

/usr/local/etc/rc.d/mysql-server forcestop

Для рестарта сервера

/usr/local/etc/rc.d/mysql-server forcerestart

Как проверить, что mysqld запущен?

Для того, чтоб проверить, что mysqld нормально запустился вам следует запустить следующую команду и сравнить ее вывод с тем что получится у вас. Должны присутствовать оба процесса — и mysqld_safe и mysqld.

%ps -ax  grep mysql
715 con- I     0:00.00 /bin/sh /usr/local/bin/mysqld_safe —defaults-ex
759 con- I     0:06.28 /usr/local/libexec/mysqld —defaults-extra-file=
%

mysqladmin ручное управление mysql

Вот короткий список команд, как управлять с командной строки работой mysqld.

mysqladmin proc — показывает список запросов, которые выполняются в данный момент SQL сервером, с текстом запроса, с его идентификатором, и время выполнения запроса.

mysqladmin kill id-процесса позволяет прекратить выполнение запро­са с данным ID

mysqladmin password новый — пароль позволяет поменять пароль для те­кущего пользователя

mysqladmin create database — создание новой базы данных
mysqladmin drop database — полное удаление базы данных
mysqladmin shutdown — нормальная остановка mysql сервера

/usr/local/etc/rc.d/mysql-server start запуск mysql сервера.

Смена пароля для админа mysql

Пароль для администратора mysql можно поменять следующим образом, вме­сто asdasd впишите; ваш пароль.

%mysqladmin password asdasd

После этого, чтоб запустить команду mysqladmin нам придется либо за­пускать ее с аргументом -Р, либо прописать пароль в файл, как показано ниже.

Настройки клиента mysql

Для того, чтоб каждый раз не вводить пароль для соединения с mysql сер­вером, можно записать настройки в файл ~/.my.cnf.

Будьте внимательны с именем файла, оно начинается с точки!

Создайте файл ~/.my.cnf, откройте его в редакторе и запишите в него следующие строчки. Если такой файл уже существует и вы поменяли па­роль пользователя, то вам нужно будет его отредактировать.

[client]

password=BAШ_ПAPOЛЬ

Для того, чтоб этот файл был бы доступен только вам, нужно обяза­тельно выполнить команду chmod 600 «/.my.cnf. Если этот файл будет доступен для чтения другим пользователям, они тоже сумеют получить административный доступ к MySQL серверу, оно вам надо?
После этого все утилиты, которые подключаются к mysql серверу, не будут спрашивать пароля для подключения. Это можно проверить на при­мере утилиты mysqladmin или mytop.

Мониторинг mysql сервера

Очень удобная утилита для мониторинга mysql сервера из консоли является mytop. Ее можно поставить из портов:

%cd /usr/ports/databases/mytop
%make install

Запускается она просто командой mytop. Она показывает запросы, ко­торые в данный момент выполняет mysql сервер, а также общую стати­стику сколько запросов в секунду, какие запросы (SELECT, UPDATE, DELETE), их количество. Выйти из утилиты можно при помощи клавиши q либо Ctrl-C.

Запретить удаленный доступ к mysqld

Можно запретить удаленный доступ к mysqld через tср, и позволить со­единяться только приложениям сданной машины. Это очень полезно для повышения безопасности сервера.

Проверить, что у вас разрешены удаленные соединения можно при по­мощи следующей команды:

%netstat -an | grep 3306
tcp4 0 0                  *.3306                *.*    LISTEN
%

Если вы видите эту строчку  значит удаленный доступ у вас открыт. Для того, чтоб его запретить нужно добавить в файл /data/mysql/mynf строки:

[mysqld]
skip_networking

Если такого файла у вас нет, создайте его.
Чтоб изменения конфигурации вступили в силу, перезагрузите mysqld сервер при помощи команды:

/usr/local/etc/rc.d/mysql-server forcerestart
%/usr/local/etc/rc.d/mysql-server restart
Stopping mysql.
Waiting for PIDS: 706.
Starting mysql.
%

Проверьте еще раз, что удаленный доступ уже  закрыт:

%netstat   -an | grep 3306
%

Проблемы с mysql

Клиентские программы не могут найти mysql сервер. Если сторон­ние программы жалуются, что они не могут подсоединиться к базе данных mysqld и не могут найти localhost, вы можете убрать из /etc/hosts строчку

::1  localhost         localhost.my.domain

и попробовать еще раз.

Если  это не поможем, Вы можете добавить в /data/mysql/my.cnf сле­дующую секцию

client]
port  = 3306
socket  = /tmp/mysql.sock
bind-address = 127.0.0.1

Установка и настройка MySQL на FreeBSD: 1 комментарий

  1. Это все конечно хорошо, но ни фига не работает, очень много скриптовых ошибок, поэтому я к примеру как новичек, не могу по этой инструкции поставить, по причине присутствия оных……

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *