Установка MySQL из портов во FreeBSD
Собирать MySQL буду из портов по этому:
# cd /usr/ports/databases/mysql55-server/ # make && make install & make clean # rehash
MySQL скомпилировался — после чего сделаем rehash и создадаем его конфиг. Скопируем стандартный конфиг:
# cp /usr/local/share/mysql/my-small.cnf /etc/my.cnf
Нужно будет его подправить, если не устраивает стандартный, мой такой:
# less /etc/my.cnf
[client] character_set_client=utf8 #password = your_password port = 3306 socket = /tmp/mysql.sock [mysqld] skip-networking character-set-server=utf8 init-connect="SET NAMES utf8" long_query_time=5 slow_query_log=1 slow_query_log_file=/var/db/mysql/slow.log #port = 3306 socket = /tmp/mysql.sock skip-external-locking key_buffer_size = 16M # Установка MySQL из портов во FreeBSD query_cache_size=64M max_allowed_packet = 128M table_open_cache = 64 sort_buffer_size = 512K net_buffer_length = 8K read_buffer_size = 256K read_rnd_buffer_size = 512K myisam_sort_buffer_size = 8M innodb_flush_log_at_trx_commit=2 skip-innodb_doublewrite server-id = 1 # binlog if need #expire_logs_days = 10 #max_binlog_size = 512M #log-bin=mysql-bin #binlog_format=mixed [mysqldump] quick max_allowed_packet = 128M [mysql] no-auto-rehash [myisamchk] key_buffer_size = 20M sort_buffer_size = 20M read_buffer = 2M write_buffer = 2M [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
Смотрим, что в /etc/newsyslog.conf присутствует
/var/log/mysql.log 600 2 500 * ZC
# /usr/local/etc/rc.d/mysql-server start
Смотрим что сервер с мускулом страртанул.
# ps ax | grep mysql
Если возникли ошибки, то нужно смотреть ‘Log’:
# tail -f /var/db/mysql/`uname -a | awk '{print $2}'`.err
Устанавливаем пароль для MySQL администратора:
# mysqladmin -u root password 'myrootpassword' # mysql -uroot -pmyrootpassword mysql
Удаляем всех лишних пользователей:
Для того что бы удалить какого либо пользователя или сразу всех нужно для начала подключиться к самому MYSQL под администратором с использованием нового пароля.
# mysql -uroot -p
Сейчас удаляем всех лишних пользователей:
mysql> delete from user where not (user='root' and host='localhost');
Нужно проверить что мы правильно все сделали и что остался только root:
Если вышли с ‘мускула’, то стоит подключиться под админом (# mysql-uroot -p):
mysql> select user,host from user;
+——+————+
| user | host |
+——+————+
| root | localhost |
+——+————+
Сейчас можно настроить автобэкап (ежедневный бэкап БД):
Для этого нам нужно установить модуль к MySQL- mysqlbackup.
# cd /usr/ports/databases/mysqlbackup # make install clean # rehash
Добавить теперь нужно в /etc/periodic.conf:
mysqlbackup_enable="YES" mysqlbackup_args="-a -u root -l 7 -z bzip2"
С этими настройками будут сохраняться все ваши архивные копий всех БД в папке бэкапов /var/backups. Если не понятно что то стало то более подробная информация — man mysqlbackup в руки.
Чтобы mysql и mysqlbackup не спрашивали root-пароль, создадим файл /root/.my.cnf с таким содержимым:
[mysql] user=root password=ROOTS_PASSWORD_HERE [client] user=root password=ROOTS_PASSWORD_HERE
Установим права на файл:
# chmod 600 /root/.my.cnf
Если вдруг кто то забыл пароль администратора от MySQL.
Нужно обновить или заменить уже существующие опции в rc.conf:
mysql_args="--skip-grant-tables --skip-networking"
Перезапустим Mysql.
# /usr/local/etc/rc.d/mysql-server restart # mysql -u root mysql> UPDATE mysql.user SET Password=PASSWORD('MyNewPass') -> WHERE User='root'; mysql> FLUSH PRIVILEGES; mysql> quit;
Смотрите так же:
Установка apache для FreeBSD из исходников (руководство по установке)
Установка PHP для FreeBSD из исходников (руководство по установке)
Установка MySQL из портов во FreeBSD завершена. За помощью обращайтесь, помогу.