Ver mysqlコマンドラインクライアントのバージョンを指します-「mysql」と入力して呼び出しているもの
分布 クライアントが構築されたmysqlサーバーのバージョンを指します 。これは、接続しているmysqlサーバーと混同しないでください。mysqlサーバーはSELECT VERSION();
で取得できます。
mysqlクライアント(あなたが呼び起こしているもの)はサーバーと一緒に配布されており、AFAIK、それ自体でそれを構築する簡単な方法はありません。
これに関するドキュメントも見つからないため、ドキュメントの唯一の「ソース」はソースです。
最初の停止:client / mysql.cc:mysqlクライアント。
static void usage(int version)
{
...
printf("%s Ver %s Distrib %s, for %s (%s) using %s %s\n",
my_progname, VER, MYSQL_SERVER_VERSION, SYSTEM_TYPE, MACHINE_TYPE,
readline, rl_library_version);
ご覧のとおり、「14.12」には定数VERを使用し、「5.0.77」にはMYSQL_SERVER_VERSIONを使用しています
これらの定数はどこで定義されていますか?、質問です。
VERは、client / mysql.ccの最上部(私のソースでは51行目)の近くで、実行時の定数として定義されています。
const char *VER= "14.14";
そして、私は、手作業またはチェックインプロセスによって更新されたと思います。これは、クライアントコードにあるため、「クライアント」のバージョンである可能性が非常に高くなります。
MYSQL_SERVER_VERSIONは、クライアントとサーバー(mysql / mysqld)の両方に使用されるinclude / mysql_version.h(12行目)で定義されています
#define MYSQL_SERVER_VERSION "5.1.56"
(実際にはconfigureスクリプトで設定され、configure時に置き換えられます)