คำสั่ง mysql สำหรับแสดงตัวแปรคอนฟิกูเรชันปัจจุบัน


122

ไม่พบคำสั่งที่แสดงการกำหนดค่าปัจจุบันของ mysql จากภายในฐานข้อมูล

ฉันรู้ว่าฉันสามารถดู /etc/mysql/my.cnf ได้ แต่นั่นไม่ใช่สิ่งที่ฉันต้องการ

คำตอบ:


222

สิ่งที่คุณกำลังมองหาคือ:

SHOW VARIABLES;  

คุณสามารถแก้ไขเพิ่มเติมได้เช่นเดียวกับข้อความค้นหา:

SHOW VARIABLES LIKE '%max%';  

72

14
Jeez ... 4 วินาทีต่อมาและไม่มีการโหวตเพิ่ม? คุณยังมีลิงก์ไปยังเอกสาร!
Izkata

ใช่มันเป็นความจริงที่ว่ารายการยอดนิยมไม่ได้ดีที่สุดมันเป็นเพียงรายการแรก
Dave Hilditch

บางทีฉันควรจะใช้มากกว่านี้backticks:)
Seth

เช่น '% version%'จะถูกต้องที่สุด แต่อุปกรณ์สำหรับลิงค์!
สู่ระบบ

2

นอกจากนี้คุณยังสามารถสืบค้นinformation_schemaฐานข้อมูลและดึงข้อมูลจากglobal_variables(และglobal_statusแน่นอนด้วย) แนวทางนี้ให้ข้อมูลเหมือนกัน แต่เปิดโอกาสให้คุณทำสิ่งต่างๆกับผลลัพธ์ได้มากขึ้นเนื่องจากเป็นแบบสอบถามแบบเก่าธรรมดา

ตัวอย่างเช่นคุณสามารถแปลงหน่วยให้อ่านง่ายขึ้น แบบสอบถามต่อไปนี้จัดเตรียมการตั้งค่าส่วนกลางปัจจุบันสำหรับหน่วยเป็นinnodb_log_buffer_sizeไบต์และเมกะไบต์:

SELECT
  variable_name,
  variable_value AS innodb_log_buffer_size_bytes,
  ROUND(variable_value / (1024*1024)) AS innodb_log_buffer_size_mb
FROM information_schema.global_variables
WHERE variable_name LIKE  'innodb_log_buffer_size';

ดังนั้นคุณจะได้รับ:

+------------------------+------------------------------+---------------------------+
| variable_name          | innodb_log_buffer_size_bytes | innodb_log_buffer_size_mb |
+------------------------+------------------------------+---------------------------+
| INNODB_LOG_BUFFER_SIZE | 268435456                    |                       256 |
+------------------------+------------------------------+---------------------------+
1 row in set (0,00 sec)
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.