วิธีการดึงเวอร์ชันปัจจุบันของระบบจัดการฐานข้อมูล MySQL (DBMS)?


422

คำสั่งใดที่ส่งคืนฐานข้อมูล MySQL รุ่นปัจจุบัน?


6
mysql --versionจำนวนที่น่าแปลกใจของคำตอบดังต่อไปนี้ขอแนะนำให้แตกต่างจากบางส่วน สิ่งนี้จะให้เวอร์ชันของยูทิลิตี้ไคลเอ็นต์ไม่ใช่เซิร์ฟเวอร์ดังนั้นจึงเป็นเรื่องเล็กน้อยที่จะพยายามค้นหาเวอร์ชันของ Apache โดยการโหลด Firefox และเปิดกล่องโต้ตอบช่วยเหลือ -> เกี่ยวกับ
mwfearnley

คำตอบ:


121

mysql --versionคำตอบที่หลายคนแนะนำให้ใช้ แต่mysqlโปรแกรมคือลูกค้า mysqldเซิร์ฟเวอร์ ดังนั้นคำสั่งควรจะเป็น

mysqld --version

หรือ

mysqld --help

สิ่งนี้ใช้ได้กับฉันใน Debian และ Windows

เมื่อเชื่อมต่อกับเซิร์ฟเวอร์ MySQL ด้วยไคลเอนต์คุณสามารถใช้

select version()

หรือ

select @@version

620

ลองฟังก์ชั่นนี้ -

SELECT VERSION();
-> '5.7.22-standard'

VERSION ()

หรือสำหรับรายละเอียดเพิ่มเติมใช้:

SHOW VARIABLES LIKE "%version%";
+-------------------------+------------------------------------------+
| Variable_name           | Value                                    |
+-------------------------+------------------------------------------+
| protocol_version        | 10                                       |
| version                 | 5.0.27-standard                          |
| version_comment         | MySQL Community Edition - Standard (GPL) |
| version_compile_machine | i686                                     |
| version_compile_os      | pc-linux-gnu                             |
+-------------------------+------------------------------------------+
5 rows in set (0.04 sec)

คู่มืออ้างอิง MySQL 5.0 (pdf) - การกำหนดเวอร์ชัน MySQL ปัจจุบันของคุณ - หน้า 42



ถ้าฉันไม่ต้องการรันอะไรที่เกี่ยวข้องกับ mysql ล่ะ ข้อมูลเวอร์ชั่นนี้ถูกเก็บไว้ที่ไหน?
Sajuuk

173

ลอง

mysql --version

เช่น dpkg -l 'mysql-server*'หรือ


1
นี่คือตัวเลือกด่วนที่ดีที่สุดถ้าคุณขี้เกียจ - คุณไม่จำเป็นต้องเข้าสู่ระบบ:-Dทำงานได้ดีบนบรรทัดคำสั่ง Centos / RHEL เช่นเดียวกับ Ubuntu
user56reinstatemonica8

11
@ user568458 เป็นที่ยอมรับ แต่จะให้รุ่นของไคลเอ็นต์หรือรุ่นของเซิร์ฟเวอร์ในท้องถิ่นโดยที่หนึ่งที่ติดตั้งเป็นแพคเกจกำลังทำงาน;)
Michael Krelin - แฮกเกอร์

คำสั่งmysql --versionนั้นไม่เฉพาะกับระบบปฏิบัติการ สิ่งนี้จะใช้ได้กับ Linux distro, Windows และ OS X.
Kolob Canyon

@KolobCanyon ดีถ้าคุณไม่ได้อยู่ในเส้นทาง :)
Michael Krelin - แฮ็กเกอร์

1
คำสั่งที่ใช้งานได้สำหรับรุ่นเซิร์ฟเวอร์จะทำงานได้ก็ต่อเมื่อเซิร์ฟเวอร์นั้นทำงานจากแพ็คเกจที่ติดตั้ง Debian
mwfearnley

30

ใช้mysql -Vงานได้ดีสำหรับฉันบน Ubuntu


3
สิ่งนี้ให้เวอร์ชันของmysqlยูทิลิตี้ไคลเอ็นต์ นี่อาจเป็นเวอร์ชั่นที่คล้ายกันหากติดตั้งในระบบเดียวกันกับเซิร์ฟเวอร์ แต่หากอยู่ในระบบที่ต่างกันอาจแตกต่างกันโดยสิ้นเชิง
mwfearnley

17
SHOW VARIABLES LIKE "%version%";
+-------------------------+------------------------------------------+
| Variable_name           | Value                                    |
+-------------------------+------------------------------------------+
| protocol_version        | 10                                       |
| version                 | 5.0.27-standard                          |
| version_comment         | MySQL Community Edition - Standard (GPL) |
| version_compile_machine | i686                                     |
| version_compile_os      | pc-linux-gnu                             |
+-------------------------+------------------------------------------+
5 rows in set (0.04 sec)

คู่มืออ้างอิง MySQL 5.0 (pdf) - การกำหนดเวอร์ชัน MySQL ปัจจุบันของคุณ - หน้า 42


16

ฉันพบวิธีง่ายๆในการรับสิ่งนั้น

ตัวอย่าง: คำสั่ง Unix (วิธีนี้คุณไม่จำเป็นต้องมี 2 คำสั่ง)

$ mysql -u root -p -e 'SHOW VARIABLES LIKE "%version%";'

ตัวอย่างผลลัพธ์:

+-------------------------+-------------------------+
| Variable_name           | Value                   |
+-------------------------+-------------------------+
| innodb_version          | 5.5.49                  |
| protocol_version        | 10                      |
| slave_type_conversions  |                         |
| version                 | 5.5.49-0ubuntu0.14.04.1 |
| version_comment         | (Ubuntu)                |
| version_compile_machine | x86_64                  |
| version_compile_os      | debian-linux-gnu        |
+-------------------------+-------------------------+

ในกรณีดังกล่าวข้างต้นเป็นรุ่น MySQL 5.5.49

โปรดหาข้อมูลอ้างอิงที่มีประโยชน์นี้


13

สำหรับUBUNTUคุณสามารถลองใช้คำสั่งต่อไปนี้เพื่อตรวจสอบเวอร์ชัน mysql:

mysql --version

9
นี่เป็นคำตอบเดียวกับที่ @MichaelKrelin ตอบ!
dani24

3
สิ่งนี้จะทำให้คุณเป็นไคลเอนต์ mysql ไม่ใช่เซิร์ฟเวอร์
Matt K

13

เวอร์ชันไคลเอนต์ Mysql : โปรดระวังสิ่งนี้จะไม่ส่งคืนเวอร์ชันเซิร์ฟเวอร์นี่จะทำให้เวอร์ชันยูทิลิตี้ไคลเอ็นต์ของ mysql

mysql -version 

รุ่นเซิร์ฟเวอร์ Mysql:มีหลายวิธีในการค้นหา

  1. SELECT version();

ป้อนคำอธิบายรูปภาพที่นี่

  1. SHOW VARIABLES LIKE "%version%";

ป้อนคำอธิบายรูปภาพที่นี่

  1. mysqld --version

mysqlคำสั่งจะต้องมีกรณีที่ต่ำกว่ามากที่สุดสำหรับแพลตฟอร์มที่ไม่ใช่ Windows แต่มันจะเป็นการดีกว่าถ้าไม่เปิดคำตอบของคุณกับเวอร์ชั่นไคลเอนต์ MySQL เพราะมันไม่ใช่สิ่งที่ถูกถามและอาจทำให้ผู้คนเข้าใจผิด
mwfearnley

แนวคิดที่นี่คือการให้ข้อมูลที่เกี่ยวข้องไม่ใช่คำตอบด่วน อย่างไรก็ตามคำตอบที่ปรับปรุงแล้วตามคำแนะนำของคุณ ขอบคุณ !!
Amitesh

สวัสดีขอบคุณที่รับฟังความคิดเห็นของฉัน ฉันจะยังคงลบข้อมูลลูกค้าเนื่องจากไม่เกี่ยวข้อง (แม้ว่าจะมีความสัมพันธ์แบบสัมผัส) และอย่างน้อยฉันขอแนะนำให้เปิดด้วยข้อมูล“ เวอร์ชันเซิร์ฟเวอร์” คำเตือนของคุณมีประโยชน์แม้ว่า
mwfearnley

11

เพียงเข้าสู่ Mysql ด้วย

mysql -u root -p

จากนั้นพิมพ์คำสั่งนี้

select @@version;

สิ่งนี้จะให้ผลลัพธ์ดังนี้

+-------------------------+
| @@version               |
+-------------------------+
| 5.7.16-0ubuntu0.16.04.1 |
+-------------------------+
1 row in set (0.00 sec)

10

รุ่นเซิร์ฟเวอร์ MySQL

shell> mysqld --version

รุ่นไคลเอนต์ MySQL

shell> mysql --version

shell> mysql -V 


4
สิ่งเหล่านี้ให้เวอร์ชันของmysqlยูทิลิตี้ไคลเอ็นต์ซึ่งอาจแตกต่างจากเวอร์ชันที่เซิร์ฟเวอร์ฐานข้อมูลกำลังทำงานอยู่
mwfearnley

@mwfearnley: คุณพูดถูก
Nanhe Kumar

ฉันเห็นว่าคุณได้อัปเดตคำตอบของคุณตอนนี้เพื่อรวมทั้งสองและวางรุ่นเซิร์ฟเวอร์ก่อน ขอบคุณ
mwfearnley

9

mysqladmin version หรือ mysqladmin -V


2
สิ่งนี้จะบอกรุ่นไคลเอนต์ mysqladmin ไม่ไปยังเซิร์ฟเวอร์ mysql
Amitesh

mysqladmin version(พร้อมรายละเอียดการเชื่อมต่อที่เหมาะสม) จะให้รุ่นเซิร์ฟเวอร์จริง แต่mysqladmin -Vให้รุ่นของmysqladminอรรถประโยชน์บรรทัดคำสั่งซึ่งอาจไม่ใช่สิ่งที่คุณต้องการ
mwfearnley


4

คุณยังสามารถดูที่ด้านบนของ MySQL shell ได้เมื่อคุณเข้าสู่ระบบครั้งแรกมันจะแสดงเวอร์ชั่นที่นั่น

Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 67971
Server version: 5.1.73 Source distribution

Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

4

ด้วย CLI ในหนึ่งบรรทัด:

mysql --user=root --password=pass --host=localhost db_name --execute='select version()';

หรือ

mysql -uroot -ppass -hlocalhost db_name -e 'select version()';

คืนบางสิ่งเช่นนี้

+-----------+
| version() |
+-----------+
| 5.6.34    |
+-----------+

4

สำหรับ Mac

  1. เข้าสู่ระบบเซิร์ฟเวอร์ mysql

  2. รันคำสั่งต่อไปนี้:

     SHOW VARIABLES LIKE "%version%";

2
สิ่งนี้ควรทำงานในไคลเอนต์ MySQL บนแพลตฟอร์มใดก็ได้ เป็นคำตอบเดียวกับที่ให้ไว้ในคำตอบก่อนหน้านี้: stackoverflow.com/a/8987742/446106
mwfearnley

3
E:\>mysql -u root -p
Enter password: *******
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 1026
Server version: 5.6.34-log MySQL Community Server (GPL)

Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> select @@version;
+------------+
| @@version  |
+------------+
| 5.6.34-log |
+------------+
1 row in set (0.00 sec)

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

4
ฉันไม่คิดว่าคำอธิบายใด ๆ ที่จำเป็นสำหรับสาเหตุSELECT @@version;ที่แสดงรุ่นนั้นจะเป็นวิธีที่ดีในการแสดงรุ่น IMO ปัญหาที่ใหญ่กว่าคือคำตอบนี้ซ้ำกับคำตอบก่อนหน้านี้
Matthew อ่าน

0

ในหน้าต่างเปิด Command Prompt และประเภทหรือMySQL -V MySQL --versionถ้าคุณใช้ Linux รับ terminal และพิมพ์MySQL -v


ด่วน! ไม่จำเป็นต้องเชื่อมต่อกับฐานข้อมูล :) ขอบคุณ
pheromix

3
นี่เป็นเพียงสำหรับไคลเอนต์ MySQL ซึ่งอาจแตกต่างจากเซิร์ฟเวอร์ นอกจากนี้คำสั่ง Linux จะต้องเป็นตัวพิมพ์เล็ก
mwfearnley

-1

ที่นี่อีกสองวิธี:

Linux: เวอร์ชันมุมมอง Mysql: จาก PHP

จากฟังก์ชั่น PHP เราจะเห็นเวอร์ชันที่ใช้:

mysql_get_server_info ([resource $ link_identifier = NULL]): string

Linux: เวอร์ชันมุมมอง Mysql: เวอร์ชันแพ็คเกจ

สำหรับระบบปฏิบัติการ RedHat / CentOS:

rpm -qa | grep mysql

สำหรับระบบปฏิบัติการ Debian / Ubuntu:

rpm -qa | grep mysql

แยกมาจาก: https://www.sysadmit.com/2019/03/linux-mysql-ver-version.html


-1

รหัสนี้ใช้ได้สำหรับฉันเท่านั้น

/usr/local/mysql/bin/mysql -V  

ที่ส่งคืนหมายเลขเวอร์ชันของไคลเอ็นต์ไม่ใช่ของเซิร์ฟเวอร์
Nico Haase
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.