cd /usr/ports/databases/mysql50-server make WITH_CHARSET=utf8 WITH_COLLATION=utf8_unicode_ci WITH_OPENSSL=yes WITHOUT_INNODB=yes install clean /usr/local/bin/mysql_install_db --basedir=/usr/local --datadir=/var/db/mysql --user=mysql --verbose Если непонятка с правами доступа (ошибка 13 в логах запуска MySQL), то выполнить: chown mysql:mysql /var/db/mysql -R   ( cd /var/db ; chown -R mysql mysql ) 
 cd /usr/ports/databases/mysql50-scripts make install clean   Прописать в /etc/rc.conf:  mysql_enable="YES" ### Остальное - по вкусу! mysql_dbdir="/var/db/mysql" mysql_args="--default-character-set=utf8 --character-set-server=utf8 --collation-server=utf8_unicode_ci"   /usr/local/etc/rc.d/mysql-server start mysqladmin -u root password '*****' mysqladmin -u root -h host.com.ua password '*****' mysql_secure_installation - убирает тестовую базу и пользователя, запрещает руту логиниться удаленно и т.п.       
Дополнение:   --default-character-set  - устаревшая опция. Вместо нее  --character-set-server Аналогично skip-locking => skip-external-locking   В my.cnf можно указать thread_stack = 512K         Работа с пользователями.   Добавляем админа: # mysql -u root -p mysql> GRANT ALL PRIVILEGES ON *.* TO admin@"%" IDENTIFIED BY "password" WITH GRANT OPTION; mysql> FLUSH PRIVILEGES; mysql> \q   Если надо потом ограничить права: mysql> REVOKE ALL PRIVILEGES, GRANT OPTION FROM admin@"%";   Создаем пользователя для конкретной базы: mysql> grant usage on *.* to user@"%" identified by "password"; mysql> grant all privileges on dbname.* to user@"%"; (чтобы забрать в дальнейшем права: REVOKE all privileges ON dbname.* FROM user@"%";)   А чтобы пользователь мог создавать таблицы по шаблону "dbname_%" в таблице MySQL\db надо создать запись "dbname\_%" (аналогичную "test\_%") только для данного конкретного пользователя. (И не забудьте после этого сделать FLUSH PRIVILEGES;) (!!!) И не делайте глупость типа grant CREATE ON *.* to user@"%" WITH GRANT OPTION   - будут глюки (прийдется делать DROP USER...)       Отключаем бинарные лог файлы для организации репликации:   Останавливаем MySQL, далее в my.cnf комментируем параметр log-bin=mysql-bin (файлы mysql-bin.xxxxxx можно грохнуть)       innodb_file_per_table   По-умолчанию MySQL все таблички innodb хранит в одном файле. Параметр innodb_file_per_table позволяет исправить эту ситуацию (my.cnf):   [mysqld] innodb_file_per_table   (Это желательно сделать сразу после установки MySQL, иначе - "дамп" всех баз innodb, остановка MySQL, удаление ibdata1, ib_logfile0, ib_logfile1 ...  и восстановление баз из "дампа")       P.S. Если вдруг оказалось, что база разрабатывалась под "Виндой" и разработчики не учли, что в Unix по-умолчанию имена таблиц регистрозависимые, то Вам поможет  lower_case_table_names=1  (в секции [mysqld] my.cnf, конечно)   			 |