FreeBSD по умолчанию для MySQL, порт и т. Д. Для my.cnf
Я работаю на сервере FreeBSD 9.2 и запускаю mysqltuner.pl
проверить потребности в памяти и кеше MySQL. Теперь мне нужно добавить my.cnf
файл в FreeBSD, поэтому он использует его вместо auto cnf
файл.
Я могу скопировать my-default.cnf
сюда:
cp /usr/local/share/mysql/my-default.cnf /usr/local/etc/my.cnf
а потом my.cnf
загрузит.
my-default.cnf
файл показывает эти значения (которые будут перенесены в my.cnf
):
# Remove leading # and set to the amount of RAM for the most important data
# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
# innodb_buffer_pool_size = 128M
# *the above innodb line I can set*
# *But where do I get the values below?*
# These are commonly set, remove the # and set as required.
# basedir = .....
# datadir = .....
# port = .....
# server_id = .....
# socket = .....
Где я могу получить значения выше? Я знаю, что они должны прийти с текущего сервера MySQL, но как мне найти эти настройки?
Этот вопрос должен быть на https://dba.stackexchange.com/?
3 ответа
Вы можете получить текущую конфигурацию, войдя в MySQL и запустив запрос
SHOW VARIABLES;
Для поиска конкретной конфигурации вы можете использовать синтаксис SQL. Например, чтобы узнать текущее использование datadir:
SHOW VARIABLES LIKE '%datadir%';
Ссылка: Официальная документация MySQL
Я знаю, что этому посту несколько лет, и с FreeBSD 9.2 (на самом деле версия 11.1 по состоянию на ноябрь 2017 года) многое изменилось, файл my.cnf можно найти в
/usr/local/etc/mysql
В общем, вам не нужно определять эти параметры, потому что они вряд ли скомпилированы в mysql, собранный как порт FreeBSD. Вы должны изменить параметры, отвечающие за настройки движка БД.
Вот мой конфиг например
[client]
port = *****
[mysqld]
port = *****
skip-external-locking
key_buffer_size = 128M
max_allowed_packet = 1M
table_open_cache = 512
join_buffer_size = 2M
sort_buffer_size = 2M
read_buffer_size = 2M
read_rnd_buffer_size = 8M
myisam_sort_buffer_size = 32M
query_cache_limit = 2M
query_cache_size = 32M
thread_cache_size = 4
thread_concurrency = 8
event-scheduler = ON
server-id = 1
[mysqldump]
quick
max_allowed_packet = 16M
[mysql]
no-auto-rehash
[myisamchk]
key_buffer_size = 128M
sort_buffer_size = 128M
read_buffer = 2M
write_buffer = 2M
[mysqlhotcopy]
interactive-timeout
Все, что я изменил, это tcp-порт, чтобы избежать глупого стука h4xor в стандартном 3306