پیدا کردن فایل تنظیمات MySQL
برای پیدا کردن فایل تنظیمات MySQL یا همون my.cnf چند تا راه هست.
mysql وقتی به صورت سرویس اجرا میشه در واقع برنامه mysqld اجرا میشه حالا ما باید ببینیم این برنامه چه فایلهایی رو بارگزاری میکنه.
۱. روش اول
1 2 3 4 5 6 7 8 9 |
$ which mysqld => /usr/sbin/mysqld $ /usr/sbin/mysqld --verbose --help | grep -A 1 "Default options" => 2019-12-11 1:17:52 140672495524992 [Note] Plugin 'FEEDBACK' is disabled. 2019-12-11 1:17:52 140672495524992 [Warning] Could not open mysql.plugin table. Some options may be missing from the help text Default options are read from the following files in the given order: /etc/my.cnf /etc/mysql/my.cnf ~/.my.cnf |
پس این فایلها به ترتیب بارگزاری میشه
1 |
/etc/my.cnf /etc/mysql/my.cnf ~/.my.cnf |
نکته مهم این هست تمام فایلهای بالا بارگزاری میشه و اگه یه تنظیمی تو فایل اول مقدار دهی بشه و تو فایل دوم هم مقدار دهی بشه مقدار دوم مقدار نهایی خواهد بود چون آخر بارگزاری شده
۲- مبتونیم با strace ارتباطات mysql رو با سیستم عامل و سیستم فایل بررسی کنیم، حالا کد زیر رو اجرا میکنیم
1 |
$ strace /usr/sbin/mysqld 2>&1 | grep 'cnf' |
حالا تو خروجی میتونید ببینید چه فایهایی رو خونده و چه فایلهایی رو نتونسته چون وجود نداشتن و به اینصورت متوجه میشید فایل اصلی کدوم هست.
باید تنظیمات مورد نظرتون رو تو بخش [mysqld] وارد کنید