是否可以更改 mysql 欢迎消息?

edm*_*dmz 7 mysql

当我从命令行连接时,是否可以更改 MySQL 显示的欢迎消息?

当前消息显示版本、Oracle 版权等。

我还想显示横幅。

cro*_*nfy 7

要删除欢迎消息,请使用--silentswitch。但它也会使输出变得非表格(SELECT 的输出没有边界),这看起来很难看。要恢复表格输出,请使用--tableswitch。

mysql --silent --table -u user_name -p db_name
# or short form
mysql -s -t -u user_name -p db_name
Run Code Online (Sandbox Code Playgroud)

要打印您自己的欢迎消息,请创建一个脚本,例如mysql.sh, 和 用于echo打印您的横幅。运行此脚本而不是mysql.

示例脚本:

#!/usr/bin/env bash

echo "Welcome to mysql!"
# "$@" will pass script arguments to mysql.
mysql -s -t "$@"
Run Code Online (Sandbox Code Playgroud)

用法:

./mysql.sh -u user_name -p db_name
Run Code Online (Sandbox Code Playgroud)

您可以使用 bash 别名或函数mysql用您的脚本替换命令,即(假设您放入mysql.sh$HOME/bin/):

alias mysql=$HOME/bin/mysql.sh
Run Code Online (Sandbox Code Playgroud)

然后mysql -u user_name -p -db_name将运行您的脚本,该脚本将打印您的横幅并运行 mysql。


小智 5

在 my.cnf 中添加以下内容:

[mysql]
silent
Run Code Online (Sandbox Code Playgroud)

或将 --silent 添加到您的 mysql CLI

并尝试登录触发器以通过“系统回显‘我的自定义消息’”打印横幅。有了更多创意,您可以自定义每个用户的登录消息。


Rol*_*DBA 2

至少,您可以使用-s--silent选项抑制欢迎消息

# mysql -u... -p -s
Run Code Online (Sandbox Code Playgroud)

它会立即出现 mysql 提示符

mysql>
Run Code Online (Sandbox Code Playgroud)

也许,您可能想要创建一个 shell 脚本,其中包含在登录 mysql 之前显示的自定义欢迎或横幅。

如果您更大胆一点,您可以下载源代码,找到并更改欢迎消息,重新编译所有二进制文件,然后安装。如果你有那么大胆,那就玩得开心吧。