Apakah key_buffer atau key_buffer_size?

9

Saya mencari di internet tentang variabel yang benar dalam my.cnffile. Beberapa mengatakan itu key_buffer_sizesudah usang, tetapi beberapa mengatakan itu key_buffer_sizeadalah variabel yang benar di my.cnf.

Jadi, apa sebenarnya variabel yang benar di sini? Apakah itu key_bufferatau key_buffer_size?

Saya menggunakan Ubuntu 12.04.

Dan saya juga memiliki dua key_buffervariabel dalam my.cnffile. Ini yang saya dapatkan setelah menginstal MySQL.

Yang pertama terletak di bawah ini:

[mysqld]
key_buffer              = 16M

Yang lain terletak di bawah ini:

[isamchk]
key_buffer              = 16M
jaYPabs
sumber

Jawaban:

11

Saya tidak berpikir key_buffer_sizesudah usang, mysql digunakan key_buffer_sizedalam dokumentasi di situs web mereka dari yang paling awal tersedia hingga versi terbaru . Ada juga laporan bug yang meminta variabel yang tidak digunakan memancarkan peringatan saat startup yang menunjukkan bahwa itu key_buffersudah usang.

Saya pribadi akan pergi dengan dokumentasi karena harus berwibawa dan sementara internet penuh dengan informasi yang berguna itu juga penuh dengan informasi yang salah.


Setelah mengatakan bahwa sepertinya mysql keluar dari cara untuk mencocokkan nama variabel yang Anda berikan ke variabel itu dan akan melakukannya selama nama yang Anda berikan unik

Dengan key_buffer_size = 16m

mysql> show variables like '%key_buffer%';
+-----------------+----------+
| Variable_name   | Value    |
+-----------------+----------+
| key_buffer_size | 16777216 |
+-----------------+----------+
1 row in set (0.00 sec)

Ubah ke key_buffer = 6m

mysql> show variables like '%key_buffer%';
+-----------------+---------+
| Variable_name   | Value   |
+-----------------+---------+
| key_buffer_size | 6291456 |
+-----------------+---------+
1 row in set (0.00 sec)

Ubah ke key_b = 16m

mysql> show variables like '%key_buffer%';
+-----------------+----------+
| Variable_name   | Value    |
+-----------------+----------+
| key_buffer_size | 16777216 |
+-----------------+----------+
1 row in set (0.00 sec)

Ubah ke key_ = 16m dan mysql gagal memulai karena key_ tidak unik.

user9517
sumber
Terima kasih. Saya hanya ingin tahu karena setelah menginstal MySQL, variabelnya bukan key_buffer_size, melainkan hanya key_buffer.
jaYPabs
@ user176890: Ya, saya perhatikan itu juga. Jika Anda benar-benar ingin tahu, Anda harus bertanya kepada Canonical yang mengelola dan memperbarui Ubuntu.
user9517
Kiat utama di sini — yang dikalahkan Lain oleh saya — adalah menggunakan SHOW VARIABLE LIKE '%key_buffer%';Saya selalu bingung tentang konvensi penamaan MySQL sepanjang waktu dan SHOW VARIABLESmerupakan penyelamat hidup.
JakeGould
1
Kalahkan Anda hingga 6 bulan @JakeGould
user9517
@ Iain Holy cr @ p! Posting lama menyengat saya lagi.
JakeGould