Làm cách nào để truy xuất phiên bản hiện tại của hệ thống quản lý cơ sở dữ liệu MySQL (DBMS)?


422

Lệnh nào trả về phiên bản hiện tại của cơ sở dữ liệu MySQL?


6
Một số câu trả lời đáng ngạc nhiên dưới đây cho thấy một số biến thể của mysql --version. Điều này cung cấp phiên bản của tiện ích máy khách , không phải máy chủ, do đó, hơi giống như cố gắng tìm hiểu phiên bản Apache của bạn bằng cách tải Firefox và mở hộp thoại Trợ giúp-> Giới thiệu.
mwfearnley

Câu trả lời:


121

Nhiều câu trả lời đề nghị sử dụng mysql --version. Nhưng mysqlchương trình là khách hàng. Các máy chủ là mysqld. Vì vậy, lệnh nên được

mysqld --version

hoặc là

mysqld --help

Điều đó làm việc cho tôi trên Debian và Windows.

Khi được kết nối với máy chủ MySQL với máy khách, bạn có thể sử dụng

select version()

hoặc là

select @@version

620

Hãy thử chức năng này -

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

PHIÊN BẢN()

Hoặc để biết thêm chi tiết sử dụng:

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)

Tài liệu tham khảo MySQL 5.0 (pdf) - Xác định phiên bản MySQL hiện tại của bạn - trang 42



Điều gì xảy ra nếu tôi không muốn chạy bất cứ thứ gì liên quan đến chính mysql? thông tin phiên bản này được lưu trữ ở đâu?
Sajuuk

173

thử

mysql --version

ví dụ. Hoặc dpkg -l 'mysql-server*'.


1
Đây là tùy chọn nhanh nhất tốt nhất nếu bạn lười biếng - thậm chí bạn không cần phải đăng nhập :-Dhoạt động tốt trên dòng lệnh Centos / RHEL cũng như Ubuntu.
user56reinstatemonica8

11
@ user568458, mặc dù vậy, nó cung cấp cho bạn phiên bản của máy khách hoặc phiên bản của máy chủ cục bộ với điều kiện là phiên bản được cài đặt dưới dạng gói đang chạy;)
Michael Krelin - hacker

Lệnh mysql --versionkhông phải là hệ điều hành cụ thể. Điều này sẽ hoạt động trên mọi bản phân phối Linux, Windows và OS X.
Kolob Canyon

@KolobCanyon, tốt, trừ khi bạn không có nó trên đường đi :)
Michael Krelin - hacker

1
Lệnh hoạt động cho phiên bản máy chủ có lẽ sẽ chỉ hoạt động nếu máy chủ đang chạy từ gói được cài đặt Debian.
mwfearnley

30

Sử dụng mysql -Vhoạt động tốt cho tôi trên Ubuntu.


3
Điều này cung cấp cho phiên bản của mysqltiện ích khách hàng. Đây có thể là một phiên bản tương tự nếu được cài đặt trên cùng một hệ thống với máy chủ, nhưng nếu chúng ở trên các hệ thống khác nhau, nó có thể hoàn toàn khác nhau.
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)

Tài liệu tham khảo MySQL 5.0 (pdf) - Xác định phiên bản MySQL hiện tại của bạn - trang 42


16

Tôi tìm thấy một cách dễ dàng để có được điều đó.

Ví dụ: Lệnh Unix (theo cách này bạn không cần 2 lệnh.),

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

Đầu ra mẫu:

+-------------------------+-------------------------+
| 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        |
+-------------------------+-------------------------+

Trong trường hợp trên phiên bản mysql là 5.5,49 .

Hãy tìm tài liệu tham khảo hữu ích này .


13

Đối với UBUNTU, bạn có thể thử lệnh sau để kiểm tra phiên bản mysql:

mysql --version

9
Đây là câu trả lời tương tự mà @MichaelKrelin đã trả lời!
dani24

3
Điều này sẽ cung cấp cho bạn phiên bản máy khách mysql chứ không phải máy chủ.
Matt K

13

Phiên bản máy khách Mysql : Vui lòng lưu ý phiên bản này không trả về phiên bản máy chủ, phiên bản này cung cấp phiên bản tiện ích máy khách mysql

mysql -version 

Phiên bản máy chủ Mysql: Có nhiều cách để tìm

  1. SELECT version();

nhập mô tả hình ảnh ở đây

  1. SHOW VARIABLES LIKE "%version%";

nhập mô tả hình ảnh ở đây

  1. mysqld --version

Các mysqllệnh cần phải được chữ thường đối với hầu hết các nền tảng không phải là Windows. Nhưng ngoài ra, tốt hơn hết là đừng mở câu trả lời của bạn với phiên bản máy khách MySQL , bởi vì đó không phải là những gì được yêu cầu và có thể đánh lừa mọi người.
mwfearnley

Ý tưởng ở đây là cung cấp thông tin liên quan, không trả lời nhanh. Dù sao, cập nhật câu trả lời dựa trên đề nghị của bạn. Cảm ơn!!
Amitesh

Xin chào, cảm ơn đã lắng nghe phản hồi của tôi. Tôi vẫn sẽ xóa thông tin khách hàng, vì nó không liên quan (mặc dù nó liên quan đến tiếp tuyến). Và ít nhất tôi cũng khuyên bạn nên mở bằng thông tin phiên bản máy chủ của hệ thống. Cảnh báo của bạn là hữu ích mặc dù.
mwfearnley

11

Chỉ cần đăng nhập vào Mysql với

mysql -u root -p

Sau đó gõ lệnh này

select @@version;

Điều này sẽ cho kết quả như,

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

10

Phiên bản máy chủ MySQL

shell> mysqld --version

Phiên bản máy khách MySQL

shell> mysql --version

shell> mysql -V 


4
Chúng cung cấp phiên bản của mysqltiện ích máy khách, có thể hoàn toàn khác với phiên bản mà máy chủ cơ sở dữ liệu đang chạy.
mwfearnley

@mwfearnley: bạn nói đúng.
Nanhe Kumar

Tôi thấy bạn đã cập nhật câu trả lời của mình ngay bây giờ để bao gồm cả hai và đặt phiên bản máy chủ lên trước. Cảm ơn.
mwfearnley

9

mysqladmin version HOẶC LÀ mysqladmin -V


2
Điều này sẽ cho phiên bản máy khách mysqladmin không đến máy chủ mysql
Amitesh

mysqladmin version(với các chi tiết kết nối phù hợp) sẽ cung cấp phiên bản máy chủ thực tế, nhưng mysqladmin -Vcung cấp phiên bản của mysqladmintiện ích dòng lệnh, đây có thể không phải là điều bạn muốn.
mwfearnley

8

Từ bảng điều khiển, bạn có thể thử:

mysqladmin version -u USER -p PASSWD

4

Bạn cũng có thể nhìn vào đỉnh của vỏ MySQL khi bạn đăng nhập lần đầu. Nó thực sự hiển thị phiên bản ngay tại đó.

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

Với CLI trong một dòng:

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

hoặc là

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

trả lại một cái gì đó như thế này:

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

4

Đối với máy Mac

  1. đăng nhập vào máy chủ mysql.

  2. thực hiện lệnh sau:

     SHOW VARIABLES LIKE "%version%";

2
Điều này sẽ làm việc trong một máy khách MySQL trên bất kỳ nền tảng nào. Đó là giải pháp tương tự được đưa ra trong một câu trả lời trước đó: 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)

Bạn có thể vui lòng cung cấp một số bối cảnh cho câu trả lời của bạn. Mặc dù rõ ràng điều này cho thấy một giải pháp, một số giải thích về cách tiếp cận của bạn và tại sao một phương pháp tốt sẽ hữu ích. Nói chung chỉ cần đăng đoạn mã là nhíu mày trong SO.
Thực thể độc thân

4
Tôi không nghĩ bất kỳ lời giải thích nào là cần thiết cho lý do tại sao SELECT @@version;, hiển thị phiên bản, sẽ là một phương pháp tốt để hiển thị phiên bản. Vấn đề lớn hơn IMO là câu trả lời này là một bản sao của các câu trả lời trước đó.
Matthew đọc

0

Trong các cửa sổ, mở Command Prompt và gõ MySQL -Vhoặc MySQL --version. Nếu bạn sử dụng Linux, hãy lấy terminal và gõMySQL -v


nhanh chóng ! không cần kết nối với cơ sở dữ liệu :) cảm ơn
pheromix

3
Điều này chỉ dành cho máy khách MySQL, có thể rất khác với máy chủ. Ngoài ra, lệnh Linux sẽ cần phải viết thường.
mwfearnley

-1

Đây là hai phương pháp nữa:

Linux: Mysql xem phiên bản: từ PHP

Từ một hàm PHP, chúng ta có thể thấy phiên bản được sử dụng:

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

Linux: Phiên bản xem Mysql: Phiên bản gói

Đối với hệ điều hành RedHat / CentOS:

rpm -qa | grep mysql

Đối với hệ điều hành Debian / Ubuntu:

rpm -qa | grep mysql

Trích xuất từ: https://www.sysadmit.com/2019/03/linux-mysql-ver-version.html


-1

Chỉ mã này làm việc cho tôi

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

Điều đó trả về số phiên bản của máy khách , không phải của máy chủ
Nico Haase
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.