Anda dapat melihat daftar lengkap opsi server MySQL dengan menjalankan
mysqld --verbose --help
Misalnya, untuk mengetahui path ke direktori data di Linux, Anda dapat menjalankan:
mysqld --verbose --help | grep ^datadir
Contoh keluaran:
datadir /var/lib/mysql/
Anda dapat mencoba ini-
mysql> select @@datadir;
PS- Ini berfungsi di setiap platform.
Anda dapat mengeluarkan kueri berikut dari baris perintah:
mysql -uUSER -p -e 'SHOW VARIABLES WHERE Variable_Name LIKE "%dir"'
Keluaran (di Linux):
+---------------------------+----------------------------+
| Variable_name | Value |
+---------------------------+----------------------------+
| basedir | /usr |
| character_sets_dir | /usr/share/mysql/charsets/ |
| datadir | /var/lib/mysql/ |
| innodb_data_home_dir | |
| innodb_log_group_home_dir | ./ |
| lc_messages_dir | /usr/share/mysql/ |
| plugin_dir | /usr/lib/mysql/plugin/ |
| slave_load_tmpdir | /tmp |
| tmpdir | /tmp |
+---------------------------+----------------------------+
Keluaran (di macOS Sierra):
+---------------------------+-----------------------------------------------------------+
| Variable_name | Value |
+---------------------------+-----------------------------------------------------------+
| basedir | /usr/local/mysql-5.7.17-macos10.12-x86_64/ |
| character_sets_dir | /usr/local/mysql-5.7.17-macos10.12-x86_64/share/charsets/ |
| datadir | /usr/local/mysql/data/ |
| innodb_data_home_dir | |
| innodb_log_group_home_dir | ./ |
| innodb_tmpdir | |
| lc_messages_dir | /usr/local/mysql-5.7.17-macos10.12-x86_64/share/ |
| plugin_dir | /usr/local/mysql/lib/plugin/ |
| slave_load_tmpdir | /var/folders/zz/zyxvpxvq6csfxvn_n000009800002_/T/ |
| tmpdir | /var/folders/zz/zyxvpxvq6csfxvn_n000009800002_/T/ |
+---------------------------+-----------------------------------------------------------+
Atau jika Anda hanya ingin menggunakan direktori data:
mysql -uUSER -p -e 'SHOW VARIABLES WHERE Variable_Name = "datadir"'
Perintah ini juga berfungsi di Windows, namun Anda perlu membalikkan tanda kutip tunggal dan ganda .
Btw, saat mengeksekusi which mysql
di Linux seperti yang Anda katakan, Anda tidak akan mendapatkan pemasangan direktori di Linux. Anda hanya akan mendapatkan jalur biner, yaitu /usr/bin
di Linux, tetapi Anda melihat instalasi mysql menggunakan banyak folder untuk menyimpan file.
Jika Anda memerlukan nilai datadir sebagai keluaran, dan hanya itu, tanpa tajuk kolom dll, tetapi Anda tidak memiliki lingkungan GNU (awk|grep|sed ...) maka gunakan baris perintah berikut:
mysql -s -N -uUSER -p information_schema -e 'SELECT Variable_Value FROM GLOBAL_VARIABLES WHERE Variable_Name = "datadir"'
Perintah akan memilih nilai hanya dari information_schema
internal mysql database dan menonaktifkan keluaran tabular dan tajuk kolom.
Keluaran di Linux:
/var/lib/mysql
jika Anda ingin mencari datadir di linux atau windows Anda dapat melakukan perintah berikut
mysql -uUSER -p -e 'SHOW VARIABLES WHERE Variable_Name = "datadir"'
jika Anda tertarik untuk mencari datadir Anda dapat menggunakan perintah grep &awk
mysql -uUSER -p -e 'SHOW VARIABLES WHERE Variable_Name = "datadir"' | grep 'datadir' | awk '{print $2}'