Установка MySQL на FreeBSD

Вот и дошли руки до баз данных. И хоть я не девелопер в базах, но MySQL нам пригодиться для дальнейшего развертывания web и mail служб на нашем сервере FreeBSD. Почему MySQL? Идеологических объяснений нет, просто он самый популярный. Надеюсь, не опущу рук и рассмотрю в будущем и другие базы.

Приступим…

Опции установки MySQL на FreeBSD

Для установки мускула есть много опций. По этому, перед установкой в /etc/make.conf внесем несколько записей. Укажем версию, кодировку (юникод), и несколько опций:

# MySQL options
DEFAULT_MYSQL_VER=55
PORTSDIR?=      /usr/ports
# server options
.if ${.CURDIR} == ${PORTSDIR}/databases/mysql55-server
WITH_CHARSET=utf8
WITH_COLLATION=utf8_unicode_ci
WITH_LINUXTHREADS=yes
BUILD_OPTIMIZED=yes
BUILD_STATIC=yes
WITHOUT_INNODB=yes
.endif
# client options
.if ${.CURDIR} == ${PORTSDIR}/databases/mysql55-client
WITH_CHARSET=utf8
WITH_COLLATION=utf8_unicode_ci
BUILD_OPTIMIZED=yes
.endif

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

Теперь соберем MySQL:

cd /usr/ports/databases/mysql55-server/
make && make install & make clean

MySQL собрался — делаем rehash и создадим его конфиг. Для этого, скопируем дефолтный конфиг:

cp /usr/local/share/mysql/my-small.cnf /etc/my.cnf

И немного его подправим. У меня он такой:

less /etc/my.cnf
# The MySQL clients options
[client]
port            = 3306
socket          = /tmp/mysql.sock

# The MySQL server options
[mysqld]
port            = 3306
socket          = /tmp/mysql.sock
bind-address    = 127.0.0.1
skip-external-locking
key_buffer_size = 16K
max_allowed_packet = 1M
table_open_cache = 4
sort_buffer_size = 64K
read_buffer_size = 256K
read_rnd_buffer_size = 256K
net_buffer_length = 2K
thread_stack = 128K

skip-networking
server-id = 1

#skip-innodb
innodb_data_home_dir = /var/db/mysql/
innodb_data_file_path = ibdata1:10M:autoextend
innodb_log_group_home_dir = /var/db/mysql/
innodb_buffer_pool_size = 16M
innodb_additional_mem_pool_size = 2M
innodb_log_file_size = 5M
innodb_log_buffer_size = 8M
innodb_flush_log_at_trx_commit = 1
innodb_lock_wait_timeout = 50

[mysqldump]
quick
max_allowed_packet = 16M

[mysql]
no-auto-rehash

[myisamchk]
key_buffer_size = 8M
sort_buffer_size = 8M

[mysqlhotcopy]
interactive-timeout

Запуск MySQL на FreeBSD

Ставим базы, раздаем права и запускаем MySQL:

/usr/local/bin/mysql_install_db
chown -R mysql:mysql /var/db/mysql
echo 'mysql_enable="YES"' >> /etc/rc.conf
/usr/local/etc/rc.d/mysql-server start

Если ошибки, смотрим логи:

tail -f /var/db/mysql/`uname -a | awk '{print $2}'`.err

Если все ок, нужно установить пароль для мускульного рута и удалить лишних пользователей:

mysqladmin -u root password 'myrootpassword'
mysql -uroot -pmyrootpassword mysql

Это мы подключились к мускулу под рутом с использованием нового пароля. Теперь удалим всех лишних пользователей:

mysql> delete from user where not (user='root' and host='localhost');

И переверим что остался только рут:

mysql> select user,host from user;
+------+-----------+
| user | host      |
+------+-----------+
| root | localhost |
+------+-----------+

На этом установка и настройка MySQL на FreeBSD завершена. Можно приступать к развертыванию других сервисов.

www.rublin.org

Запись опубликована в рубрике *Unix,*Linux, FreeBSD. Добавьте в закладки постоянную ссылку.

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

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

Я не спамер This plugin created by Alexei91