Мы — долго запрягаем, быстро ездим, и сильно тормозим.

FreeBSD
  настройка
  подсчёт трафика
  программы
  frox
  SARG
  samba & ClamAV
  named
  proftpd
  cacti
  SAMBA+AD+NT ACL
  MySQL
  hylafax
  DDNS+DHCP
  cvsupd
  Samba как PDC
  Основы LDAP
  LDAP+SSL
  LDAP auth
  knockd
  rsync
  MRTG
  Rejik
  Jabber - OpenFire
  Samba(PDC) + Ldap
  squid+AD
  ATSlog
  vsftpd
  LDAP: samba, dns, dhcp
  Free-SA
  cups-samba на samba+AD
  irc + services
  Nagios - мониторинг сети
  TeamSpeak
  icecast2
  verlihub (p2p)
  Icecast2 + Darkice
  OOPS
  vsftpd + mysql
  Amanda
  HAVP
  Рыбалка на FreeBSD
  DNS сервер NSD
  DNS сервер Unbound
  mpd5, msmtp, dynamic ip
  ProFTPd + LDAP
  OpenVPN + LDAP
  Samba (PDC+BDC)
  BIND & AD
  POWERDNS
  3proxy
  eGroupWare
  GLPI
  SugarForge CRM
  Bacula
  Mysql - базовое описание
  Asterisk IP PBX
  Samba & CUPS & AD & ACL
  SMSTools 3
  Samba+ NT ACL
  phpmyadmin
  1С:Предприятие 8.1
  PurefFTPd
  qemu network
  AimSniff
  comms/scmxx
  Zoneminder
  Openfire Jabber Server
  Zoneminder 2
  Принт-Сервер Samba+LPD & AD
  Кластер OpenLDAP 2.4
  Lightsquid
  Установка Zabbix-1.6
  Установка net2ftp
  VSFTPD + AD && MySQL
  Network UPS Tools
  mpd5 L2TP client
  Apache 2.2 as a proxy
  ejabberd+mysql+icq
  HotSpot
  Установка и использование Zenoss на FreeBSD 7.2
  mysql-proxy
  DNS zones
  squid+sams+sqstat
  transmission-daemon
  Squid+AD (group access)
  named 9.7.0
  SysAid Server
  MySQL Master+Master
  proftpd file auth&quota
  usb_modeswitch
  NSDadmin
  iperf Тест скорости между хостами
  Простой факс-сервер mgetty+sendfax
  SQUID-MultiCpuSystem
  vsftpd + system users
  Syslog server
  Температура в серверной
  Nagios+Digitemp
  Avast! FreeBSD
  Настройка git+gitosis
  Firefox SyncServer
  Scan+Print server FreeBSD 9
  proftpd,pgsql,web
  почтовые системы
  Шелезяки
  Мелочи
  Файловая система
  WWW
  Security
  system
  Games Servers
  X11
  Programming
Очумелые Ручки
OpenBSD
Cisco


www.lissyara.su —> статьи —> FreeBSD —> программы —> MySQL

Установка MySQL

Автор: lissyara.


    Опять статья навеянная многочислеными просьбами трудящихся :) Заодно не придётся во всех новых статьях описывать установку MySQL :) Так что, в любом случае пригодится. Вообще, с MySQL вроде всё просто, но почему-то народ активно морозится баз данных, используя системных юзеров в почте, да всякие файлы текстовые, под почту да хранение трафика. Хотя с БД оно всё на порядок удобней получается.
   Итак, рассматривать будем установку и небольшую настройку двух версий MySQL - 5.0 и 3.23 под FreeBSD6.0. Почему именно они? На данный момент, 5.1 вроде всё ещё бета, потому используется на рабочих серверах только отъявленными маньяками, или теми у кого есть необходимость. А вот 3.23 нужна в случаях, когда на какой-нить старенькой машинке нужна "записная книжка" для почтовых юзеров, да БД куда складывать статистику по траффику инета, например. Подымать для этого 5.0 или 4.1 - расточительство оперативки и ресурсов слабенькой машинки. У меня и на некоторых, очень хороших машинах, стоит 3.23 - ибо его хватает.
   Итак, ставим 5.0
/usr/home/lissyara/>cd /usr/ports/databases/mysql50-server/
/usr/ports/databases/mysql50-server/>make
===>  Vulnerability check disabled, database not found

You may use the following build options:

        WITH_CHARSET=charset    Define the primary built-in charset (latin1).
        WITH_XCHARSET=list      Define other built-in charsets (may be 'all').
        WITH_COLLATION=collate  Define default collation (latin1_swedish_ci).
        WITH_OPENSSL=yes        Enable secure connections.
        WITH_LINUXTHREADS=yes   Use the linuxthreads pthread library.
        WITH_PROC_SCOPE_PTH=yes Use process scope threads
                                (try it if you use libpthread).
        BUILD_OPTIMIZED=yes     Enable compiler optimizations
                                (use it if you need speed).
        BUILD_STATIC=yes        Build a static version of mysqld.
                                (use it if you need even more speed).
        WITHOUT_INNODB=yes      Disable support for InnoDB table handler.
        WITH_ARCHIVE=yes        Enable support for Archive Storage Engine.
        WITH_FEDERATED=yes      Enable support for Federated Storage Engine.
        WITH_NDB=yes            Enable support for NDB Cluster.

===>  Extracting for mysql-server-5.0.22
^C
/usr/ports/databases/mysql50-server/>

Прервал. Доступна куча опций, потому с ними и поиграемся, для чего в файл /etc/make.conf надо внести такие строки:
# Для некоторых, особо тупых приложений, лучше указать версию MySQL,
# что используется, тут. Но - для совсем тупых не поможет и это.
DEFAULT_MYSQL_VER=50

# Директория где лежат порты
PORTSDIR?=      /usr/ports

# для сервера
.if ${.CURDIR} == ${PORTSDIR}/databases/mysql50-server
# Дефолтовая кодировка. Вообще, этим пунктом увлекаться не стоит -
# могут возникнуть проблемы при переносе на другой сервер. На самом
# деле и не проблемы вовсе - просто дамп перекодировать да поменять
# кодировку-коллэйшен у таблиц в дампе, перед заливкой, но первый
# раз столкнувшись, вызывает кучу проблем...
WITH_CHARSET=cp1251
# Другие вкомпиленные кодировки. Можно задать 'all' - все.
#WITH_XCHARSET=all
# Дефолтовая кодировка сравнения (другого слова подобрать не могу...)
WITH_COLLATION=cp1251_bin
# Поддержка OpenSSL - для шифрования передаваемых данных.
# Шифрование - это конечно хорошо, но - повышается нагрузка на
# машину сервера и на машину клиента (если и тот и другой на одной
# машине - вообще не вижу смысла в этом пункте.)
#WITH_OPENSSL=yes
# Интересная опция - позволяет работать в несколько "нитей",
# обрабатывая несколько запросов одновременно - в результате
# повышается производительность.
WITH_LINUXTHREADS=yes
# Программные треды FreeBSD (если я верно всё понял). Тестов на скорость,
# в сравнении с линуксовыми не нашлось - потому не знаю, кто быстрей.
# Кстати, видел рекомендацию - включать и те и другие треды одновременно.
# Смысла, особого в этом не вижу, но и не утверждаю ничего.
#WITH_PROC_SCOPE_PTH=yes
# Собирать с флагами оптимизации (-O2), сам не мерял, но по слухам,
# несколько процентов производительности можно выиграть. Будет
# полезным на старых машинах, или высоконагруженных.
BUILD_OPTIMIZED=yes
# Собрать статическую версию mysqld (cо вкомпиленными либами, чтоль)
# Также, как и предыдущая опция, позволит выиграть несколько процентов
# производительности (по слухам - до 10% - но чё-то слабо верится...)
BUILD_STATIC=yes
# Отключить тип таблиц InnoDB (если не используете - будет поменьше
# коду, и, соответственно, быстрей работать будет)
WITHOUT_INNODB=yes
# Специальный тип хранения данных (не всех, тока тех, что без индексов),
# позволяет хранить их в виде архива, тем самым экономится дисковое
# пространство (в ущерб производительности, я думаю... Так что смысл
# есть, лишь если надо хранить кучу неиндексированных данных -
# те же данные по траффику, к примеру, там всё равно перебором почти всё :))
#WITH_ARCHIVE=yes
# Фенька, позволяющая работать с удалёнными (находящимися на другом хосте)
# таблицами данных, как будто они находятся на локальной машине
# (NFS, чтоль, уже отменили? :)) Хотя, если выборки будут идти на другом
# хосте - то нагрузка на сеть будет меньшe, чем с NFS. Короче - не пробовал,
# ничё не утверждаю... Пару строк в документации прочёл.)
#WITH_FEDERATED=yes
# Опция, нужная лишь в случае, если будете собирать кластер MySQL-серверов
#WITH_NDB=yes
.endif
# для клиента
.if ${.CURDIR} == ${PORTSDIR}/databases/mysql50-client
# Многие из опция сервера, применяются и в клиенте. Вобщем-то, какие не
# применяются, интуитивно понятно - то, что касается всяких фенек, типа
# кластеров, архивных таблиц и прочего. Ставить их тут можно, но они не
# произведут никакого действия. Также, хочу заметить, что кодировка,
# 'по-умолчанию' бывает не тока у сервера, но и у клиента. Частенько,
# именно на этом прокалываются. (И вовсе не обязательно она должна быть
# такая же как у сервера.)
# Также хочу заметить, что клиента не надо собирать с какими бы то ни
# было тредами - линуксовыми, или родными - я прокололся на линуксовых,
# вроде всё пашет, с консоли, а вот апач падает... Методом исключения
# выяснил виновника - клиент с тредами - падает mysql-модуль PHP,
# валит апача...
WITH_CHARSET=cp1251
WITH_COLLATION=cp1251_bin
BUILD_OPTIMIZED=yes
.endif

Итак, собираем MySQL:
/usr/home/lissyara/>cd /usr/ports/databases/mysql50-server/
/usr/ports/databases/mysql50-server/>make && make install && make clean

После инсталляции клиента сборка прекращается с ошибкой - не может найти библиотеку.
===>   Installing ldconfig configuration file
===>   Compressing manual pages for mysql-client-5.0.22
===>   Registering installation for mysql-client-5.0.22
===>   Returning to build of mysql-server-5.0.22
Error: shared library "mysqlclient.15" does not exist
*** Error code 1

Stop in /usr/ports/databases/mysql50-server.
/usr/ports/databases/mysql50-server/>

Я перезагрузился, помогло, но можно и иначе, дать команду:
/usr/home/lissyara/>/sbin/ldconfig -m /usr/local/lib/mysql
/usr/home/lissyara/>

Должно помочь и без перезагрузки. Вообще, раньше, вместе с клиентом, инсталлся такой скрипт:
/usr/local/etc/rc.d/000.mysql-client.sh
#!/bin/sh 

case "$1" in 
        start) 
                /sbin/ldconfig -m /usr/local/lib/mysql 
                ;; 
        stop) 
                ;; 
        *) 
                echo "" 
                echo "Usage: `basename $0` { start | stop }" 
                echo "" 
                exit 64 
                ;; 
esac 

Нынче он не инсталлится. Если ошибки будут продолжаться, при сборке других приложений из портов, то можно его добавить в автозагрузку, или, что грамотней, добавить путь в /etc/rc.conf (подробности можно найти здесь, поиск в странице, по ключевому слову ldconfig_paths).
После чего продолжаем инсталляцию:
/usr/ports/databases/mysql50-server/>make install && make clean

По окончании инсталляции, стругаем конфиг для mysql - /usr/local/etc/my.cnf
# Этот конфигурационный файл сделан на основе файла для маленьких
# систем - /usr/local/share/mysql/my-small.cnf. Большую часть его
# делал не я, а один знакомый. Имени, к сожалению, не помню...
# Но всё же предупреждаю - копирайт на настройки конфига не мой :))
#
# Вообще, конфигурационный файл можно положить в несколько мест:
# /etc/my.cnf
# /var/db/mysql/my.cnf
# /usr/local/etc/my.cnf
# В любом из них mysqld его найдёт, и достанет из него настройки.
# Самое корректное место, если судить по стартовому скрипту, это
# директория где лежат базы данных - /var/db/mysql/my.cnf.


# Опции для всех клиентов MySQL
[client]
# Пароль для подключения к БД
#password       = your_password
# Порт на котором висит MySQL
port            = 3306
# Сокет MySQL
socket          = /tmp/mysql.sock


# Опции MySQL-сервера
[mysqld]
# Порт
port            = 3306
# Адрес, который будем слушать (если вам не нужно подключаться к
# MySQL с других машин, то оставьте здесь 127.0.0.1)
bind-address    = 127.0.0.1
# Где лежит сокет
socket          = /tmp/mysql.sock
# Не использовать средства системных блокировок.
skip-locking
# Вообще, в новых версиях, (после 3.21) этот пункт правильно называется
# key_buffer_size, но можно использовать и старое имя. Значение этого
# пункта - размер буфера, используемого для блоков индексов. Чтобы
# улучшить обработку индексов (для всех операций чтения и записи нескольких
# элементов), необходимо увеличить это значение настолько, насколько возможно.
# Рекомендуется, 1/4 от объёма оперативки, но не более 1/2 - иначе система
# может начать сохранять временные файлы на диске, что значительно
# снизит производительность.
key_buffer = 16K
# Максимальный размер одного пакета. Изначально размер буфера сообщений
# устанавливается в net_buffer_length байтов, но при необходимости может
# возрасти до max_allowed_packet байтов. Это значение по умолчанию не
# настолько велико, чтобы отсеивать большие (возможно ошибочные) пакеты.
# Если используются большие столбцы BLOB, его необходимо увеличить.
# Значение должно быть не меньше самого большого BLOB, который будет
# использоваться. Ограничение протокола для max_allowed_packet
# составляет 16 Мб в MySQL 3.23 и 1Гб в MySQL 4.0.
max_allowed_packet = 1M
# Количество открытых таблиц для всех потоков. С увеличением этого
# значения увеличивается количество дескрипторов файлов, необходимых
# для mysqld. Чтобы узнать, необходимо ли изменять значение кэша таблиц,
# следует проверить значение переменной Opened_tables.
# Если у этой переменной большое значение, а команда FLUSH TABLES
# (которая закрывает все таблицы, а потом открывает их повторно)
# используется не часто, то необходимо увеличить ее значение.
table_cache = 4
# Каждый поток, которому необходимо произвести сортировку, выделяет
# буфер данного размера. Увеличение данного значения позволит ускорить
# выполнение операторов ORDER BY или GROUP BY.
sort_buffer_size = 64K
# Каждый поток, осуществляющий последовательное сканирование, выделяет
# буфер указанного размера для каждой сканируемой таблицы. Если
# проводится много последовательных сканирований, это значение
# можно увеличить.
read_buffer_size = 256K
# При считывании строк, после проведения сортировки, в отсортированном
# порядке строки считываются через буфер, чтобы избежать операций поиска
# по диску. Это может улучшить выполнение ORDER BY весьма и весьма,
# если параметр установлен в большое значение. Т.к. эта переменная
# имеет отношение к потоку, то не устанавливайте слишком большое
# значение глобально, но просто меняйте его при выполнении некоторых
# больших запросов.
read_rnd_buffer_size = 256K
# В данное значение устанавливается, в промежутках между запросами,
# буфер соединения. Обычно это значение не изменяется, но если у вас
# очень мало памяти, можно установить его по размеру ожидаемого
# запроса (т.е. равным предполагаемой длине операторов SQL, отправляемых
# клиентами; если оператор превысит указанную длину, буфер будет
# автоматически увеличен как максимум до max_allowed_packet байтов).
net_buffer_length = 2K
# Размер стека для каждого потока. От данного значения зависит большое
# количество ограничений, обнаруживаемых при помощи теста crash-me.
# По умолчанию этот размер достаточен для нормальной работы.
thread_stack = 64K

# Вообще не слушать порты TCP/IP. Это может применяться для большей
# безопасности, если все процессы, соединяющиеся с MySQL висят на томже
# хосте, что и mysqld. Все взаимодействия с mysqld будут осуществляться
# через Unix-сокеты, или именованые каналы.
# Заметтьте, что использование этой опции под форточками, без включчения
# именованных каналов (используйте опцию "enable-named-pipe") сделает
# работу MySQL бесполезной - ибо с mysqld никто не сможет соединиться :)
skip-networking
# Если Вы используете InnoDB, то закомментируйте эту опцию
skip-innodb
# С этой опцией MySQL не будет инициализировать библиотеку Berkeley DB,
# что позволит сэкономить большое количество памяти.
skip-bdb
# Hекоторое уникальное число между 2 и 2^32-1. Значения server-id должны
# быть различными на каждом сервере, участвующем в репликации. Если
# значение server-id не определено, оно будет установлено в 1, если
# также не определено значение master-host, оно будет установлено в 2.
# Обратите внимание, что если значение server-id опущено, то головной
# сервер будет отказывать в соединении всем подчиненным серверам, а
# подчиненный сервер - отказывать в соединении головному серверу.
# Таким образом, опускать установку значения server-id можно лишь в
# случае резервного копирования с использованием двоичного журнала.
server-id       = 1
# Раскомментируйте эту опцию, для включения логгирования всех запросов
# Заметтьте - тока на время отладки! Потом надо закомментить и
# рестартануть MySQL!
# Файл должен существовать, с соответствующими правами на него:
# touch /var/log/mysql.log
# chown mysql:wheel /var/log/mysql.log
# chmod 640 /var/log/mysql.log
log            = /var/log/mysql.log

# Указывает местоположение двоичного журнала обновлений,
# в котором будут вестись записи.
#log-bin=mysql-bin

[mysqldump]
# Если задан этот параметр, то обработчик таблицы при выполнении
# удаления не будет объединять индексы - в некоторых случаях это
# может ускорить данную операцию
quick
# Максимальная величина пакета, посылаемого/принимаемого с сервера
max_allowed_packet = 16M

[mysql]
# Отключает автоматическое рехеширование. rehash следует использовать
# для получения хеша таблиц и полей. Это обеспечивает более
# быстрый старт mysql.
no-auto-rehash
# Опция, которую рекомендуется раскомментить начинающим :)
# Разрешает выполнять только операции UPDATE и DELETE, используя ключи.
#safe-updates

[isamchk]
key_buffer = 8M
sort_buffer_size = 8M

[myisamchk]
key_buffer = 8M
sort_buffer_size = 8M

[mysqlhotcopy]
# Допускать простой длительностью interactive_timeout секунд (вместо
# wait_timeout секунд) перед закрытием данного соединения.
interactive-timeout

# P.S. Большинство текста - это из мануала по MySQL 4.0, за который
# мы не так давно воевали на www.mysql.com (его убирали на некоторое
# время, типа он по старой версии, потому не актуален...
# но - отвоевали, вернули :))))

C таким конфиг-файлом mysqld занимает в 6 раз меньше памяти, чем без него. Итак, запускаем:
/usr/home/lissyara/>echo 'mysql_enable="YES"' >> /etc/rc.conf
/usr/home/lissyara/>/usr/local/etc/rc.d/mysql-server.sh start
Starting mysql.
/usr/home/lissyara/>
/usr/home/lissyara/>ps -axj | grep mysqld
mysql    44512     1 44510   504    0 S     p0    0:00,08 /bin/sh /usr/local/bin
mysql    44530 44512 44510   504    0 SN    p0    0:00,15 /usr/local/libexec/mys
mysql    44531 44530 44510   504    0 SN    p0    0:00,00 /usr/local/libexec/mys
mysql    44532 44531 44510   504    0 SN    p0    0:00,00 /usr/local/libexec/mys
mysql    44533 44531 44510   504    0 SN    p0    0:00,00 /usr/local/libexec/mys
root     44548   507 44547   504    2 S+    p0    0:00,02 grep mysqld
/usr/home/lissyara/>

Так много процессов - потому как с тредами (на самом деле он один...).

   С 5-кой разобрались. Теперь пример установки, для самой старой версии mysql, что есть в портах - 3.23.
/usr/home/lissyara/>cd /usr/ports/databases/mysql323-server/
/usr/ports/databases/mysql323-server/>make && make install && make clean
===>  Vulnerability check disabled, database not found

You may use the following build options:

        WITH_CHARSET=charset    Define the primary built-in charset (latin1).
        WITH_XCHARSET=list      Define other built-in charsets (may be 'all').
        WITH_OPENSSL=yes        Enable secure connections.
        WITH_LINUXTHREADS=yes   Use the linuxthreads pthread library.
        WITH_PROC_SCOPE_PTH=yes Use process scope threads
                                (try it if you use libpthread).
        BUILD_OPTIMIZED=yes     Enable compiler optimizations
                                (use it if you need speed).
        BUILD_STATIC=yes        Build a static version of mysqld.
                                (use it if you need even more speed).
        WITHOUT_INNODB=yes      Disable support for InnoDB table handler.

===>  Extracting for mysql-server-3.23.59.n.20050301_3
^C
/usr/ports/databases/mysql323-server/>

Чтож, опции, в большинстве своём, точно такие же, как и у 5.0. Соответсвенно правим файл /etc/make.conf (приведено без комментов, ибо нового ничё нет - смотрите предыдущий листинг)
# Для некоторых, особо тупых приложений, лучше указать версию MySQL,
# что используется, тут. Но - для совсем тупых не поможет и это.
DEFAULT_MYSQL_VER=323

# Директория где лежат порты
PORTSDIR?=      /usr/ports

# для сервера
.if ${.CURDIR} == ${PORTSDIR}/databases/mysql323-server
BUILD_OPTIMIZED=yes
BUILD_STATIC=yes
# Единственный пункт, по которому нужны, наверно, пояснения.
# Просто без него у меня не заводилось...
#WITHOUT_INNODB=yes
.endif
# для клиента
.if ${.CURDIR} == ${PORTSDIR}/databases/mysql323-client
.endif

После рихтовки /etc/make.conf снова запускаем компиляцию:
/usr/ports/databases/mysql323-server/>make && make install && make clean

Которая по окочании установки клиента вываливается с ошибкой, похожей на ту, что и у mysql 5.0:
===>   Installing ldconfig configuration file
===>   Compressing manual pages for mysql-client-3.23.59.n.20050301_2
===>   Registering installation for mysql-client-3.23.59.n.20050301_2
===>   Returning to build of mysql-server-3.23.59.n.20050301_3
Error: shared library "mysqlclient.10" does not exist
*** Error code 1

Stop in /usr/ports/databases/mysql323-server.
/usr/ports/databases/mysql323-server/>

Лечение тоже самое - перезагрузка, или
/usr/home/lissyara/>/sbin/ldconfig -m /usr/local/lib/mysql
/usr/home/lissyara/>

После чего всё нормально доинсталлируеся. Можно создавать конфиг /usr/local/etc/my.cnf
# Этот конфигурационный файл сделан на основе файла для маленьких
# систем - /usr/local/share/mysql/my-small.cnf.
#
# Вообще, конфигурационный файл можно положить в несколько мест:
# /etc/my.cnf
# /var/db/mysql/my.cnf
# /usr/local/etc/my.cnf
# В любом из них mysqld его найдёт, и достанет из него настройки.
# Самое корректное место, если судить по стартовому скрипту, это
# директория где лежат базы данных - /var/db/mysql/my.cnf.


# Опции для всех клиентов MySQL
[client]
# Пароль для подключения к БД
#password       = your_password
# Порт на котором висит MySQL
port            = 3306
# Сокет MySQL
socket          = /tmp/mysql.sock


# Опции MySQL-сервера
[mysqld]
# Порт
port            = 3306
# Адрес, который будем слушать (если вам не нужно подключаться к
# MySQL с других машин, то оставьте здесь 127.0.0.1)
bind-address    = 127.0.0.1
# Где лежит сокет
socket          = /tmp/mysql.sock
# Не использовать средства системных блокировок.
skip-locking

# Вообще не слушать порты TCP/IP. Это может применяться для большей
# безопасности, если все процессы, соединяющиеся с MySQL висят на томже
# хосте, что и mysqld. Все взаимодействия с mysqld будут осуществляться
# через Unix-сокеты, или именованые каналы.
# Заметтьте, что использование этой опции под форточками, без включчения
# именованных каналов (используйте опцию "enable-named-pipe") сделает
# работу MySQL бесполезной - ибо с mysqld никто не сможет соединиться :)
skip-networking
# Если Вы используете InnoDB, то закомментируйте эту опцию
skip-innodb
# С этой опцией MySQL не будет инициализировать библиотеку Berkeley DB,
# что позволит сэкономить большое количество памяти.
skip-bdb
# Hекоторое уникальное число между 2 и 2^32-1. Значения server-id должны
# быть различными на каждом сервере, участвующем в репликации. Если
# значение server-id не определено, оно будет установлено в 1, если
# также не определено значение master-host, оно будет установлено в 2.
# Обратите внимание, что если значение server-id опущено, то головной
# сервер будет отказывать в соединении всем подчиненным серверам, а
# подчиненный сервер - отказывать в соединении головному серверу.
# Таким образом, опускать установку значения server-id можно лишь в
# случае резервного копирования с использованием двоичного журнала.
server-id       = 1
# Раскомментируйте эту опцию, для включения логгирования всех запросов
# Заметтьте - тока на время отладки! Потом надо закомментить и
# рестартануть MySQL!
# Файл должен существовать, с соответствующими правами на него:
# touch /var/log/mysql.log
# chown mysql:wheel /var/log/mysql.log
# chmod 640 /var/log/mysql.log
log            = /var/log/mysql.log

# Указывает местоположение двоичного журнала обновлений,
# в котором будут вестись записи.
#log-bin=mysql-bin

[mysqldump]
# Если задан этот параметр, то обработчик таблицы при выполнении
# удаления не будет объединять индексы - в некоторых случаях это
# может ускорить данную операцию
quick

[mysql]
# Отключает автоматическое рехеширование. rehash следует использовать
# для получения хеша таблиц и полей. Это обеспечивает более
# быстрый старт mysql.
no-auto-rehash
# Опция, которую рекомендуется раскомментить начинающим :)
# Разрешает выполнять только операции UPDATE и DELETE, используя ключи.
#safe-updates

[isamchk]
key_buffer = 8M
sort_buffer_size = 8M

[myisamchk]
key_buffer = 8M
sort_buffer_size = 8M

[mysqlhotcopy]
# Допускать простой длительностью interactive_timeout секунд (вместо
# wait_timeout секунд) перед закрытием данного соединения.
interactive-timeout

Можно заметить, что отличия от 5.0 минимальны - отсутствуют опции буферов, да и всё, пожалуй. Запускаем:
/usr/home/lissyara/>echo 'mysql_enable="YES"' >> /etc/rc.conf
/usr/home/lissyara/>/usr/local/etc/rc.d/mysql-server.sh start
Starting mysql.
/usr/home/lissyara/>ps -axj | grep mysql
mysql     8848     1  8846   504    0 S     p0    0:00,07 /bin/sh /usr/local/bi
mysql     8868  8848  8846   504    0 S     p0    0:00,06 /usr/local/libexec/my
root      8870   507  8869   504    2 L+    p0    0:00,01 grep mysql
root      8754  5368  8754  5344    1 S+    p1    0:00,02 tail -f /var/db/mysql
/usr/home/lissyara/>

Всё пашет.

Теперь общие вопросы. По дефолту, в MySQL заведено несколько пользователей, типа гостей, и прочих. Я их обычно удаляю - нефига гостям по БД шляться....
/usr/home/lissyara/>mysql --database=mysql --execute="SELECT COUNT(*) FROM user"
+----------+
| COUNT(*) |
+----------+
|        4 |
+----------+
/usr/home/lissyara/>mysql --database=mysql --execute="DELETE FROM user \
? WHERE User=''"
/usr/home/lissyara/>mysql --database=mysql --execute="SELECT COUNT(*) FROM user"
+----------+
| COUNT(*) |
+----------+
|        2 |
+----------+
/usr/home/lissyara/>mysql --database=mysql --execute="DELETE FROM user \
? WHERE Host != 'localhost'"
/usr/home/lissyara/>mysql --database=mysql --execute="SELECT COUNT(*) FROM user"
+----------+
| COUNT(*) |
+----------+
|        1 |
+----------+
/usr/home/lissyara/>
/usr/home/lissyara/>mysql --database=mysql --execute="UPDATE user SET \
? Password = PASSWORD('тут ввести пароль рута')"
/usr/home/lissyara/>mysql --database=mysql --execute="FLUSH privileges"
/usr/home/lissyara/>mysql --database=mysql --execute="SELECT * FROM user"
ERROR 1045: Access denied for user: 'root@localhost' (Using password: NO)
/usr/home/lissyara/>

Всё. Без пароля к БД не добраться. Вообще, общая рекомендация - если плохо знаете MySQL - либо займитесь изучением, либо поставьте графический интерфейс, типа phpMyAdmin. Я вначале пошёл по второму пути, щас пытаюсь свернуть на первый :))) Единственное - не забывайте его запаролить.

P.S. При проблемах (не запускается), смотрим лог ошибок:
/usr/home/lissyara/>tail -f /var/db/mysql/`uname -a | awk '{print $2}'`.err



Ссылка на обсуждение: http://forum.lissyara.su/viewtopic.php?t=3410.

размещено: 2006-07-08,
последнее обновление: 2008-07-21,
автор: lissyara

оценить статью:

100kg, 2006-07-08 в 17:42:53

ого !! а я вот с сурса компалю!!

Abigor, 2006-07-10 в 10:52:25

Ну и зря, попробуй теперь это богадство обновить, вопрос автору, почуму при сборке 5 в name.conf пишешь
DEFAULT_MYSQL_VER=41

Abigor, 2006-07-10 в 10:53:22

прошу простить, просто сейчас ковырял named =) в make.conf

lissyara, 2006-07-10 в 11:25:29

ашипка.... Ща поправлю...

Abigor, 2006-07-17 в 8:23:45

а можешь рассказать что делать для того чтоб правельно обновить mysql с 4.1 до 5.0

bonh, 2006-07-27 в 12:34:09

Сразуже выскочил 0,

/usr/home/lissyara/>mysql --database=mysql --execute="DELETE FROM user \
? WHERE User=''"
/usr/home/lissyara/>mysql --database=mysql --execute="SELECT COUNT(*) FROM user"
+----------+
| COUNT(*) |
+----------+
|        0 |
+----------+

На строчку
mysql --database=mysql --execute="UPDATE user SET \
? Password = PASSWORD('тут ввести пароль рута')"

ругается так:
ERROR 1064 (42000) al line 1: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'passwd_root')" at line 1

что делать?..

Key, 2006-09-27 в 19:38:59

Не понял, что там за гемморой с удалением левых пользователей? Не проще сделать:
# mysqladmin -u root -password 'mypass'
# mysql -uroot -pmypass mysql
mysql> delete from user where not (user='root' and host='localhost');

Можно убедиться, что там только root остался:

mysql> select user,host from user;
+-----+---------+
|user |host     |
+-----+---------+
|root |localhost|
+-----+---------+
1 rows in set (0.00 sec)

Всё!

Эдик, 2006-10-13 в 22:08:09

Спасибо огромное !!!

Кирилл, 2006-12-16 в 18:22:25

Вот тебе найденные БАГИ и ФИЧИ!!!
Вообще-то, я не люблю работать с чужим кодом, но мне надо было быстро поставить MySQL, в котором я пока вообще 0.
Так вот, эта строка:
mysql --database=mysql --execute="DELETE FROM user \
? WHERE User=''"
убивает нах ВСЕХ пользователей из БД. Спасибо!

lissyara, 2006-12-16 в 19:38:08

Да ты гонишь.
mysql> SELECT COUNT(*) FROM user;
+----------+
| COUNT(*) |
+----------+
|       15 |
+----------+
1 row in set (0.00 sec)

mysql> DELETE FROM user WHERE user='';
Query OK, 0 rows affected (0.01 sec)

Я могу заподозрить лишь одно - ты незнаком с синтаксисом шелла и не понял что в строке листинга - две строки - это одна. В этом случае, ты выполнял что-то типа
"DELETE FROM user "
Эта команда, действительно, удалит всех юзеров.
P.S. У тя ж должна быть пустая инсталляция? В чём проблема - останавливаешь муся, и руками сносишь всё БД (/var/db/mysql/) - при перезапуске она всё сама создаст.
P.S.2 читай комменты. Там был более хороший способ удаления пользователей.
P.S.3 и ``man csh'' неплохобы почитать.

Кирилл, 2006-12-17 в 13:34:20

Да нет, не гоню! Во-первых, у меня Bash. Во-вторых, как тебе видится ввод твоей команды? Типа, набираешь:
mysql --database=mysql --execute="DELETE FROM user\, жмёшь ввод, затем добираешь ?WHERE User=''" и опять жмёшь ввод? И шелл, типа, после первой строки ждёт от тебя второй, а потом кидает всё на обработку? Так что-ли? Это только для *.sh-скрипта будет так, а с консоли шелл выполнит первую строку , отшвырнёт всякие там \, а MySQL радостно потрёт всех юзверей, что и произошло! А посему, нужно было написать слитно всю команду и всё у всех было бы ОК. А то я ведь не один такой :), видел выше?

Кирилл, 2006-12-17 в 13:40:14

А теперь, покурив про MySQL, поделюсь.
Там, в MySQL, есть классные команды типа DROP USER и CREATE USER и SET PASSWORD. Ими аццки удобно заводить и убивать пользователей, ставить им пароль и рубить права с помощью GRANT! mysql> help Account Management, да и вообще mysql> help Contents, очень полезно, даже для тех кто в первый раз видит MySQL в действии!

lissyara, 2006-12-17 в 18:00:50

Те, кто используют нештатный шелл - свободны сразу :)))
/usr/home/lissyara/>cd /usr/ports/; \
? echo $PWD ;\
? cd /tmp ; \
? ls
/usr/ports
dbmail_scoreboard_803.LCK               summary.em0
dbmail_scoreboard_813.LCK               summary.lo0
mysql.sock                              summary.xl0
sess_3a84f6aa94cb74113ad26c94c3dbf667
/tmp/>

первый пришедший на ум пример. Как ни странно - это листинг с рабочей машины. Юзайте csh а не баши - ибо это - неродное.
P.S. Вопросик добирать не надо - это второй PROMPT csh`лла.
И вообще - в форум :) Развели тут демагогию.

mrrc, 2006-12-20 в 23:08:04

Во время инсталляции хочу разместить базу на отдельном MySQL-сервере, расположенном на внешнем хосте.
Как на том хосте разрешить внешнее подключение к MySQL, выдается:

Unable to connect to MySQL server. MySQL reported: Host '*' is not allowed to connect to this MySQL server


MySQL 4.1.22 из портов, FreeBSD 4.х.

Friendvard, 2007-01-19 в 12:18:15

Привет ребята. Мне срочно нужна помош, я устанавил MySQL 5 как написано здес, когда запускаю он пишет Starting mysql. но после запуска смотрю статус пишет mysql is not running. не видаёт не каких ошибок, логах всё чисто, дело в том, что я 0 по мускулу, а заципица не зашто, не каких ошибок не видаёт. Прашу помоч, мне оно очен нужно...
Сории за неграматность в язике.

Артем, 2007-05-11 в 12:49:02

lissyara, спасибо. Статья очень помогла! Написано в доходчевой форме и оформление что надо.

Krivosoft, 2007-05-18 в 13:21:49

сам наступил на грабли т.к с БД не работал (кроме КАРАТ в молодости :-) ), мож кому окажется полезным:

После установки пароля рута в БД попадаем командой
mysql -p -u root

Создать новую базу:
mysql> create database xxxx;

Посмотреть созданые базы:
mysql> show databases;
+----------+
| Database |
+----------+
| forum    |
| mysql    |
| samp     |
| test     |
| xxxx     |
+----------+
5 rows in set (0.00 sec)

Создать нового пользователя, и дать ему админа на конкретную БД:
grant all on xxxx.* to 'login'@'localhost' identified by 'password';

npu3pak, 2007-07-02 в 10:59:41

всё как по статье, но получил в логах

070702 10:49:37 [ERROR] /usr/local/libexec/mysqld: Can't find file: './mysql/host.frm' (errno: 13)
070702 10:49:37 [ERROR] /usr/local/libexec/mysqld: Can't find file: './mysql/host.frm' (errno: 13)
070702 10:49:37 [ERROR] Fatal error: Can't open and lock privilege tables: Can't find file: './mysql/host.frm' (errno: 13)

вылечилось так:
cd /var/db/mysql
chgrp -R mysql .
chown -R mysql .

posix, 2007-07-10 в 19:22:17

Товарисчи! Не забудьте добавить в my.cnf:
default-character-set=cp1251 в области клиента и сервера иначе трудновато немного станет работать, тот же LIKE не будет регистронезависим.

AlkoGekS, 2007-07-18 в 14:15:00

После установки версий, сразу вылезает несколько ошибок призапуске. Чтобы избежать сие, пишем:
usr/local/bin/mysql_install_db
затем
chown -R mysql:mysql /var/db/mysql/

-=DOmen=-, 2007-07-20 в 12:40:48

AlkoGekS, 10x помогло

miroha, 2007-08-16 в 18:52:55

ставил на 6.2 пустую перед установкой сделал полз mysql...
пока не за комментировал WITH_LINUXTHREADS=yes в make.conf ставиться не хотела. ЧЕм это грозит и как исправить?
огромное спасибо всё работает...

DyuS, 2007-11-28 в 20:07:00

Все прописал в make.conf но как ставилось с WITH_CHARSET=cp1251 так и ставится. Сейчас пробую вручную собрать, может быть кто подскажет из-за чего он не влияет на установку?

DyuS, 2007-11-28 в 20:10:06

Извиняюсь устанавливается с WITH_CHARSET=latin1

Юрий, 2008-03-15 в 11:17:46

Спасибо за полезную инфо!
Единственно пришлось добавить в my.conf:
 skip-innodb
Чтобы в логах было чисто.
PS: Unix FreeBSD 6.1

Дмитрий, 2008-04-09 в 11:54:54

miroha
WITH_LINUXTHREADS=yes работает с i386- может в этом грабли?

Saykhan, 2008-07-21 в 9:05:33

/usr/ports/databases/mysql50-server]# make install && make clean
===>   mysql-server-5.0.51a depends on file: /usr/local/bin/libtool - found
===>   mysql-server-5.0.51a depends on shared library: lthread.[35] - not found
===>    Verifying install for lthread.[35] in /usr/ports/devel/linuxthreads
===>   Returning to build of mysql-server-5.0.51a
Error: shared library "lthread.[35]" does not exist
*** Error code 1

Stop in /usr/ports/databases/mysql50-server.

Ашипка не может найти библиотеку, перезагруз не помогает, /sbin/ldconfig -m /usr/local/lib/mysql тоже(

Saykhan, 2008-07-21 в 14:51:47

эту строку в make.conf надо закомментировать, а то требует линукс триды.
#WITH_LINUXTHREADS=yes

Pr0x1ndei, 2008-07-30 в 18:18:21

===>   Registering installation for linuxthreads-2.2.3_23
===>   Returning to build of mysql-server-5.1.26
Error: shared library "lthread.[35]" does not exist
*** Error code 1

Stop in /usr/ports/databases/mysql51-server.
/usr/ports/databases/mysql51-server home# make clean
===>  Cleaning for linuxthreads-2.2.3_23
===>  Cleaning for mysql-server-5.1.26
/usr/ports/databases/mysql51-server home# make deinstall
===>  Deinstalling for databases/mysql51-server
===>   mysql-server not installed, skipping
/usr/ports/databases/mysql51-server home# make install clean

покомпилилось и вывалилось с


===>   linuxthreads-2.2.3_23 is already installed
     You may wish to ``make deinstall'' and install this port again
     by ``make reinstall'' to upgrade it properly.
     If you really wish to overwrite the old port of devel/linuxthreads
     without deleting it first, set the variable "FORCE_PKG_REGISTER"
     in your environment or the "make install" command line.
*** Error code 1

Stop in /usr/ports/devel/linuxthreads.
*** Error code 1

Stop in /usr/ports/databases/mysql51-server.

/usr/ports/databases/mysql51-server home# cd /usr/ports/devel/linuxthreads
/usr/ports/devel/linuxthreads  home# make deinstall && make clean && make install clean

скомпилилось и потом
/usr/ports/devel/linuxthreads home# cd /usr/ports/databases/mysql51-server
/usr/ports/databases/mysql51-server home# make install && make clean

и всё заработало

/home/grumble home# uname -a
FreeBSD 7.0-RELEASE FreeBSD 7.0-RELEASE #0: Sun Feb 24 19:59:52 UTC 2008     root@logan.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC  i386

AndreyK, 2008-08-13 в 18:28:38

Устанавливая из обновленных портов MySQL server 5.0.51a на обновлённой FreeBSD 7.0-p3, не забыть сделать следующее
mser# /usr/local/bin/mysql_install_db --user=mysql
mser#/usr/local/bin/mysqld_safe --user=mysql&

mser#/usr/local/bin/mysqladmin -u root password 'new-password'

Если так не делать то сервер не стартует.

udaff, 2008-09-07 в 21:46:48

Привет парни.
В пятом мускуле лучше выкинуть во эту строчку
with_linuxTHREADS=yes
А то не собирается, вот обсуждение:
http://www.opennet.ru/openforum/vsluhforumID1/79831.html[/url]
Оно там само треды как-то делает...

bos, 2008-09-15 в 18:37:12

Ковыряли фрю с Вадимом ( Vermillion)
при установке 3.23 а также 4 версии под фрю 7.0 неприлично ругается по типу "obsolete and does not build with gcc4.2; use mysql 5 or later"

это глюк фри который лечится редактированием Makefile

.if ${OSVERSION} >= 700000
-IGNORE=        obsolete and does not build with gcc4.2; use mysql 5 or later
+USE_GCC=3.4
.endif
.if defined(BUILD_OPTIMIZED)
CFLAGS+=    -O3 -fno-omit-frame-pointer -fno-gcse

вот собственно ссылка http://www.mavetju.org/mail/view_message.php?list=freebsd-bugs&id=2748343

но возникает следующий глюк при установке клиента .... как исправить хз :)
статья отличная спс

trawa, 2008-10-14 в 18:00:25

Статья очень помогла , как и статья по подЪему трака http://forum.lissyara.su/viewtopic.php?f=14&p=67219
Огромное человеческое спасибо.
И н прекращай опысывать - у тебя нормально получаетса - доходчиво.

kabu4i, 2008-10-15 в 17:53:30

FreeBSD7.0 MySQL 5.0.51a
стартануть удалось только так:/usr/local/etc/rc.d/mysql-server forcestart

XLATM, 2008-11-07 в 14:26:49

Закомментарить в make файле
".if ${OSVERSION} >= 700000
"IGNORE=        obsolete and does not build with gcc4.2; use mysql 5 or later
".endif

И собирать с gcc34

make CC=/usr/local/bin/gcc34 CXX=/usr/local/bin/g++34 CPP=/usr/local/bin/cpp34

предварительно собрав в gcc34 из /usr/ports/lang/gcc34

demonsked, 2008-11-20 в 1:45:11

Поставил по статье,но 5,1 версию. Так вот, не запускается сервер пока не закоментируешь строки
skip-innodb
skip-bdb
А в остальном работает.

Hikari, 2009-02-27 в 4:20:03

после обновления мира пересобирал мускул, так вот без
закомментаривания
#WITH_LINUXTHREADS=yes
не пересобирался. Шрифты ему не те...

Crazy, 2009-03-18 в 5:16:09

OS 7.1-RELEASE-p3 i386 64bit
MySQL 5.1.23
Пытался собрать из портов. Матерился на то что не хватает mysql.info. После того как внаглую подсунул данный файл (.Docs/mysql.info)собрался и установился :(
При работе плющило. Плюнул собрал с исходников.
З.Ы. 5.0 теже проблемы

Alex, 2009-06-28 в 14:44:29

Товарисчи, поставил пятёрку, при запуске ругается ERROR 2002 (HY000): Can't connect to
local MySQL server through socket '/var/mysql/mysql.sock'

че иму нада?

bos, 2009-06-29 в 8:23:19

Обычно, когда такое пишет оно хочет чтобы в rc.conf его добавили и перегрузили тачку, после это должно завестись, если делали все по статье!

konstantine, 2009-07-13 в 7:00:36

блин у мя прям карма с Базами похорду.
я делаю:
/usr/local/etc/rc.d/>mysql -u root mysql -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 11
Server version: 5.1.35 FreeBSD port: mysql-server-5.1.35

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>


Как видите меня пускает, а если
/usr/local/etc/rc.d/>mysqladmin -u root -password 'новый_пароль'
mysqladmin: connect to server at 'localhost' failed
error: 'Access denied for user 'root'@'localhost' (using password: YES)'

2konstantine, 2009-07-16 в 13:56:47

/usr/local/etc/rc.d/>mysqladmin -u root password \'новый_пароль\'

gyurza2000, 2009-07-30 в 10:52:47

c WITH_LINUXTHREADS=yes make не работает :)

Xander, 2009-10-01 в 12:27:18

Уважаемый Лис! Все прекрасно работает, статейка супер! Приятней было бы начинающим видеть как прикрутить PhpMyAdmin. Сам убил на это дело больше пол дня,так и не получилось. Позднее отдохнул, выпил бутылочку пива, и пошел верным способом, сделал все что нужно было через консоль.

Wic, 2009-12-06 в 15:10:30

Прошу добавить в статью сие, а то голову сломал почему мускул не стартовал
AlkoGekS, 2007-07-18 в 14:15:00

После установки версий, сразу вылезает несколько ошибок призапуске. Чтобы избежать сие, пишем:
usr/local/bin/mysql_install_db
затем
chown -R mysql:mysql /var/db/mysql/!

NewChel, 2010-03-12 в 6:18:21

Ставил по статье версию 5.1 на freebsd 7.1.
Замечены баги:
skipdbd нужно убрать. из конфига.

выполнить
chown -R mysql:mysql /var/db/mysql/

Потом выполнить /usr/local/bin/mysql_install_db - выдаст ошибку. согласно http://forum.lissyara.su/viewtopic.php?f=11&t=8464#p110585 временно переименовываем my.cnf и снова запускаем.

После всего этого мускуль у меня завелся.

Лиссяра благодарю :) Может подправить статью ближе к современным реалиям?

xM, 2010-12-01 в 9:52:38

Всё течет, всё меняется.
При инсталляции 5.5 вылезло несколько траблов. В этой связи позволю себе привести свой конфиг в виде правки оригинальной статьи.
1. В /etc/make.conf имеем (не забудьте {PORTSDIR} указать выше):

DEFAULT_MYSQL_VER=55
.if ${.CURDIR} == ${PORTSDIR}/databases/mysql55-server
WITH_CHARSET=cp1251
WITH_COLLATION=cp1251_bin
BUILD_OPTIMIZED=yes
.endif
.if ${.CURDIR} == ${PORTSDIR}/databases/mysql55-client
WITH_CHARSET=cp1251
WITH_COLLATION=cp1251_bin
BUILD_OPTIMIZED=yes
.endif

2. Инсталлируем стандартным манером.
3. Ставим базы:

/usr/local/bin/mysql_install_db

4. Меняем права и принадлежность

beta# chown -R mysql:mysql /var/db/mysql

5. На базе стандартного /usr/local/share/mysql/my-small.cnf делаем в /etc свой:

[client]
port            = 3306
socket          = /tmp/mysql.sock

[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

general-log = /var/log/mysql.log
#log-bin=mysql-bin
#binlog_format=mixed

#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

6. Стартуем стандартным скриптом

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

7. Наслаждаемся.

miragh, 2011-04-02 в 1:07:10

в /usr/local/bin/ есть скрипты, после свежей установки делаю /usr/local/bin/mysql_secure_installation, Вдруг кто не знает... =)

wilce, 2011-10-13 в 13:50:07

Таки предложил бы нечто такое (для 8ки и выше)
1. Корректируем /etc/make.conf (так как вам нужно, короткий простой вариант указан здесь выше).

2. Инсталлируем стандартно как в статье из нужного каталога (например ../databases/mysql55-server для примера хМ).

3. Включаем запуск при старте системы
echo \'mysql_enable=\"YES\"\' >> /etc/rc.conf

4. все описанные здесь my.conf, и есть /usr/local/share/mysql/my-small.cnf посему можно просто скопировать его, если он по какой то причине не устраивает, в этом каталоге есть для среднего и большого сервера или читаем документацию.

5. Если хочется ставить базы идем читаем документацию на офсайте ибо /usr/local/bin/mysql_install_db под рутом запускать нужно с параметрами чтобы потом не ерзать с chown -R mysql:mysql /var/db/mysql

Официальная документация на версию 5.5 для FreeBSD гласит:
/usr/local/etc/rc.d/mysql-server start
или если по каким то причинам вы не захотели стартовать сервис при загрузке и не выполнили пункт 3., то
/usr/local/etc/rc.d/mysql-server onestart
При первом запуске этот скрипт:
создаст пользователей, группу, служебные базы и таблицы, назначит необходимые права.

6. Читаем раздел \"постинсталяционные задачи\" на офсайте если хотим вникнуть, что же за шаги нужно сделать, иначе запускаем предложенный выше скрипт:
/usr/local/bin/mysql_secure_installation
он задаст рутовый пароль,
исключит удаленный доступ от рута через сеть (рут может логинится только с локалхоста, что важно если вы потом сделаете доступными сетевые подключения для мускула),
удалит анонимного пользователя и тестовые базы (записи).
в том числе и осуществит обновление прав на рабочем сервере.
7. Логинимся проверяем...
например
mysql -u root -p
SELECT User, Host, Password FROM mysql.user;
видим, что все коннекты только с локалхостов, пользователь только рут пароли везде заданы.

Vlad, 2012-03-01 в 13:05:43

Установка мускула прошла без единой ошибки. А вот стартовать не хочет.
В логе пишет - /usr/local/libexec/mysqld, Version: 5.0.92-log (FreeBSD port: mysql-server-5.0.92). started with:
Tcp port: 0  Unix socket: /tmp/mysql.sock
Time                 Id Command    Argument

В указанной директории /tmp нет файла /mysql.sock
Пока вот ищу в нете описание данной ситуации и её решение, Но возможно здесь кто подскажет.

Vlad, 2012-03-01 в 13:10:54

Забыл указать какой ставил..
mysql-client-5.0.92 Multithreaded SQL database (client)
mysql-server-5.0.92 Multithreaded SQL database (server)

Система - FreeBSD 8.2-RELEASE

slater, 2012-08-07 в 14:18:01

Коллеги, что бы никто не наступал на грабли.
При установке mysql55,
при запуске mysql_install_db
лезет ошибка
FATAL ERROR: Could not find ./bin/my_print_defaults
лечиться просто:
cd /usr/local
bin/mysql_install_db --user=mysql --ldata=/var/db/mysql

Digital, 2012-10-05 в 13:36:20

Подскажите как решить проблему, запускаю make install ставлю msql55 начинает собирать и сразу показывает
error when bootstrapping cmake пробовал ставить другие версии, то же самое, гугл не помог)


Оставьте свой комментарий:
Ваше имя:   *
e-mail:  
жирный
наклонный
подчёркнутый
ссылка
цвет
Нынешний год:   *
 


Хостинг HOST-FOOD

2014-07-27, lissyara
gmirror

Удалённое создание софтверного зеркала средствами gmirror, на диске разбитом с использованием gpart. Использование меток дисков для монтирования разделов.
2013-08-20, zentarim
Scan+Print server FreeBSD 9

Настройка сервера печати и сервера сканирования под управлением операционной системы FreebSD 9 для МФУ Canon PIXMA MP540
2011-11-20, BlackCat
Разъём на WiFi-карту

Делаем съёмной несъёмную антену на WiFi-карте путём установки ВЧ-разъёма
2011-09-14, manefesto
Настройка git+gitosis

Настройка системы контроля версия исходного кода в связке git+gitosis+ssh
2011-08-14, zentarim
Wi-FI роутер + DHCP + DNS

Настройка Wi-Fi роутера на Freebsd 8 + DNS сервер + DHCP сервер: чтобы Wi-Fi клиенты были в одной подсети с проводными, проводные и беспроводные клиенты получали адреса автоматически по DHCP, кэширующ
2011-06-15, -ZG-
Охранная система на FreeBSD+LPT

В этой статье описана попытка реализации простой охранной системы на базе FreeBSD с подключением к ней охранных устройтсв на LPT порт и видеорегистрацией.
2011-03-13, terminus
ng_nat

Описание работы ng_nat, практическое использование, достоинства и недостатки в сравнении с ipfw nat
2011-02-20, Капитан
Nagios+Digitemp

Статья описывает создание системы оповещения о превышении температуры в специальных помещениях на основе Nagios с использованием программы Digitemp.
2011-02-17, Le1
Zyxel Configuration

Скрипт для массового изменения конфига свичей Zyxel. Берет из файла iplist список ip-шек, заходит последовательно на каждый и выполняет комманды из файла commands, записывая происходящее в лог файл.
2011-02-16, fox
hast carp zfs ucarp cluster

HAST (Highly Available Storage), CARP, UCARP, ZFS, Cluster настройка и одаптация плюс личные размышления…
2011-02-04, BlackCat
Восстановление ZFS

История о том, как был восстановлен развалившийся RAIDZ ZFS-пул (перешедший в FAULTED) с помощью скотча и подручных средств. Или о том, какие приключения ожидают тех, кто не делает резервных копий.
2011-02-03, Капитан
1-Wire

Статья описывает самостоятельное изготовление контроллера DS9097 для съёма показаний с датчиков температуры DS1820 с помощью программы Digitemp.
2011-01-28, Капитан
Температура в серверной

Статья описывает построение системы наблюдения за температурой в помещении серверной с использованием программы Digitemp и выводом графиков в MRTG
2011-01-21, m4rkell
Syslog server

Как то буквально на днях, у нас завалилось, что то в еве) или не в еве не суть. Суть в том, что когда захотели снять логи с хостов esx обнаружили, что хранят эти негодяи логии только за последнии сутк
2011-01-07, lissyara
Canon/gphotofs

Монтирование цифровых фотоаппаратов Canon (PTP) как файловой системы, автоматизация этого процесса через события devd и внешние скрипты.
2010-12-13, Al
IPSec

Описание принципов работы IPSEC и способов аутентификации.
2010-12-07, manefesto
FreeBSD on flash

Было принято решении переехать на USB Flash и установить минимальный джентельменский набор для работы своего роутера. Делаем =)
2010-12-05, Fomalhaut
root ZFS, GPT

Инструкция по установке FreeBSD с использованием в качестве таблицы разделов GPT и в качестве основной файловой системы - ZFS
2010-09-05, Cancer
Настройка аудиоплеера на ximp3

Цели: Простенький аудиоплеер, для того что бы тетя продавец в магазине утром пришла нажала на кнопку Power и заиграла в зале музыка, так же был доступ по сети, общая шара куда можно заливать музыку, к
2010-08-31, Cancer
Установка и настройка OpenVPN

На днях появилась задача - объединить головной офис и 3 филиала в одну сеть через интернет посредством OpenVPN, чтобы люди могли подключаться через RDP к базам 1С на серверах.
2010-08-25, manefesto
freebsd lvm

Использование linux_lvm для работы с LVM разделами из-под FreeBSD. Проблемы которые возники при монтирование lvm раздела
2010-04-30, gonzo111
proftpd file auth&quota

Proftpd - квоты и авторизация из файлов, без использования базы данных и/или системных пользователей
2010-04-22, lissyara
tw_cli

Пошаговая инструкция по восстановлению RAID на контроллере 3ware, из которого выпал один диск. Настройка мониторинга состояния рейда и отчётов о его состоянии на email.
2010-04-14, fox
MySQL Master+Master

MySQL (Master Master) and (Master Slave) Как настроить репликацию…
2010-03-22, Mufanu
named 9.7.0

Система доменных имен (Domain Name Service, DNS) - одна из тех незаметных, закулисных программ, которым не уделяется и половины того внимания, которого они заслуживают.
2010-03-09, terminus
DNS zones

Краткий ликбез про управление DNS зонами. Примеры проведения делегирования прямых и обратных DNS зон.
2010-03-09, aspera
Squid+AD (group access)

Настройка прокси сервера SQUID с автроризацией пользователей в AD. Разделение пользователей на группы
2010-03-02, BlackCat
Шлюз: Часть 4

Настройка дополнительных сервисов: синхронизация времени (OpenNTPD), клиент DynDNS.org.
2010-03-01, BlackCat
Шлюз: Часть 3

Настройка DHCP и DNS серверов для работы внутри частной сети, c поддержкой внутренних (частных зон) DNS, а так же интеграция DHCP и DNS сервисов.
2010-03-01, BlackCat
Шлюз: Часть 2

Конфигурация МСЭ pf для проброса портов с изменением порта назначения и без, а так же поддержки активного режима FTP и ограничения максимального размера сегмента
2010-03-01, BlackCat
Шлюз: Часть 1

Быстрая настройка шлюза/маршрутизатора с установлением PPPoE-соединения, поддержкой NAT и DNS-forwarding.
2010-02-23, Morty
darkstat

Простая считалка траффика, со встроенным веб-сервером. Очень маленькая, может делать отчеты трафика по хостам, портам, протоколам, а также строить графики
2010-01-23, gonzo111
squid+sams+sqstat

Пилим squid и sams - примеры конфигов с объяснениями. Установка SqStat.
2009-12-19, schizoid
mpd5 + radius + ng_car + Abills

Настройка pppoe-сервера с биллинговой системой Abills и шейпером ng_car
2009-11-16, lissyara
UFS->ZFS

Удалённая миграция с UFS на ZFS. Загрузка с раздела zfs. Настройка для работы с малым количеством памяти под архитектурой i386.
2009-11-13, gx_ua
fusefs-ntfs

Установка, настройка и использование fusefs-ntfs, драйвер NTFS, предназанченного для монтирования NTFS разделов под FreeBSD
2009-11-12, Morty
LiveCD

Создание собственного LiveCD с необходимыми вам изменениями, автоматизирование данного процесса, а так же вариант скоростной сборки СД.
2009-09-27, lissyara
Samba как PDC

Контроллер домена - аналог M$ NT4 домена под самбой, без использования LDAP и прочей хиромантии. Просто и быстро =)
2009-08-30, terminus
ipfw nat

Подробное руководство по ipfw nat, сложные случаи конфигурации.
2009-08-24, levantuev
HotSpot

Установка Hotspot системы в общественное заведение.
2009-08-18, lissyara
diskless

Создание бездисковых терминалов под управлением FreeBSD - с загрузкой по сети. Используются для старта rdesktop и подключения к виндовому серверу терминалов.
2009-07-29, BAV_Lug
Видеонаблюдение

Настройка бюджетного варианта видеонаблюдения на удаленном объекте
2009-07-22, Cancer
OpenLDAP адресная книга

Настройка и создание адресной книги на базе OpenLDAP + phpLDAPadmin
2009-06-30, SergeySL
AimSniff

Руководство по созданию системы мониторинга ICQ-переписки на базе AimSniff, использующей базу данных MySQL для хранения и Web-интерфейс WAS (Web Aim Sniff) для просмотра перехваченных сообщений
2009-06-25, atrium
Управление правами доступа

Полномочия пользователей и файлов, принадлежащих им, формирует концепцию ОС UNIX.
2009-06-16, DNK
Exim+PgSQL

Установка почтовой системы exim+pgsql на FreeBSD 7.1
2009-05-30, mvalery
HDD(mbr) -> HDD(gpt)

Как разбить диск размером более 2TB на разделы, сделать загрузочным, а затем перенести на него информацию с рабочей системы — донора.
2009-05-22, Cancer
SendXMPP

Отправка сообщений на Джаббер сервер по средствам SendXMPP
2009-05-11, Raven2000
Network UPS Tools

Network UPS Tools представляет собой набор программ, которые обеспечивают общий интерфейс для мониторинга и администрирование UPS оборудования.
2009-04-29, m0ps
IPSEC over GRE with RIP

Пример IPSEC over GRE и динамическим роутингом (RIP), с ADSL в качестве последней мили на оборудовании Cisco.
2009-04-24, WhiteBear777
qemu network

Появилась необходимость поставить на БСД эмулятор(qemu) и настроить в качестве гостевой ОС Windows XP, предоставив ей выход в локалку и в сеть internet...
2009-04-22, vp
freebsd + huawei 162 gsm modem

В статье описывается простой способ подключения модема huawei 162 к freebsd + первичная настройка smstools
2009-04-12, mvalery
Мониторинг RAID

Мониторинг из командной строки RAID компаний AMCC 3ware, HighPoint, Dell (Perc 5/i и PERC 6/i) и LSI (MegaRAID SAS 8408E и SAS1078)
2009-04-09, texnotronic
RAID1 via LAN

Функциональности DRBD во FreeBSD можно добиться примонтировав блочное устройство по сети при помощи GEOM Gate (ggate) и добавив его в зеркало с локальным диском средствами gmirror.
2009-04-03, Raven2000
Оптимизация хоста для CMS

В последнее время на старый и не очень быстрый ПК (Celeron 800 RAM 256) мною было навешано с десяток сайтов и некоторые были из серии тяжелых CMS. И так нам дано FreeBSD 7.1 и ~10 сайтов/CMS.
2009-04-01, atrium
VSFTPD + AD && MySQL

Настройка самого безопасного сервера FTP - vsftpd.
2009-03-31, Dron
Peoplenet + C-motech (3G)

Описание подключения к сети Peoplenet посредством 3G модема С-motech CCu-650U на FreeBSD
2009-03-25, lissyara
mod_auth_external

mod_auth_external - авторизация пользователей в apache c помощью внешней программы - например, системных пользователей.
2009-03-24, gx_ua
Lightsquid

Частично lightsquid может заменить sams: быстрая и простая инсталляция, быстрый парсер, cgi скрипт для динамической генерации отчета, нет привязки к БД, различные графические отчеты, мультиязычный инт
подписка

    вверх      
Статистика сайта
Сейчас на сайте находится: 17 чел.
За последние 30 мин было: 63 человек
За сегодня было
12 показов,
4 уникальных IP
 

  Этот информационный блок появился по той простой причине, что многие считают нормальным, брать чужую информацию не уведомляя автора (что не так страшно), и не оставляя линк на оригинал и автора — что более существенно. Я не против распространения информации — только за. Только условие простое — извольте подписывать автора, и оставлять линк на оригинальную страницу в виде прямой, активной, нескриптовой, незакрытой от индексирования, и не запрещенной для следования роботов ссылки.
  Если соизволите поставить автора в известность — то вообще почёт вам и уважение.

© lissyara 2006-10-24 08:47 MSK

Время генерации страницы 0.2096 секунд
Из них PHP: 71%; SQL: 29%; Число SQL-запросов: 77 шт.
Исходный размер: 248062; Сжатая: 45285