当我从命令行连接时,是否可以更改 MySQL 显示的欢迎消息?
当前消息显示版本、Oracle版权等。
我还想展示一条横幅。
答案1
要删除欢迎消息,请使用--silent
switch。但这也会使输出变成非表格形式(SELECT 的输出没有边界),看起来很丑陋。要恢复表格输出,请使用--table
switch。
mysql --silent --table -u user_name -p db_name
# or short form
mysql -s -t -u user_name -p db_name
要打印您自己的欢迎信息,请创建一个脚本,例如,mysql.sh
,并使用它echo
打印您的横幅。运行此脚本而不是mysql
。
示例脚本:
#!/usr/bin/env bash
echo "Welcome to mysql!"
# "$@" will pass script arguments to mysql.
mysql -s -t "$@"
用法:
./mysql.sh -u user_name -p db_name
您可以使用 bash 别名或函数来mysql
用脚本替换命令,即(假设您输入mysql.sh
到您的$HOME/bin/
):
alias mysql=$HOME/bin/mysql.sh
然后mysql -u user_name -p -db_name
将运行您的脚本,它将打印您的横幅并运行mysql。
答案2
在你的 my.cnf 中添加以下内容:
[mysql]
silent
或者将 --silent 添加到你的 mysql CLI
并尝试登录触发器通过“系统回显‘我的自定义消息’”打印横幅。如果再发挥一些创造力,您可以自定义每个用户的登录消息。
答案3
至少,你可以使用-s
或--silent
选项隐藏欢迎消息
# mysql -u... -p -s
它会立即出现 mysql 提示符
mysql>
也许,您可能想要创建一个 shell 脚本,其中包含登录 mysql 之前显示的自定义欢迎或横幅。
如果您更大胆一点,您可以下载源代码,找到并更改欢迎消息,重新编译所有二进制文件,然后安装。如果您有那么大的胆量,那就尽情享受吧。