Solus系统MariaDB命令行输出过多短横线的修复方法求助
我之前在不同系统切换MariaDB/MySQL客户端时也碰到过类似的格式错乱问题,针对你在Solus OS上遇到的多余短横线、表格难以阅读的情况,可以试试下面这几个实用方法:
1. 调整终端字符集为UTF-8
终端字符集不匹配是这类格式问题的常见原因。先检查当前终端的字符集:
echo $LANG
如果输出不是类似en_US.UTF-8的UTF-8格式,临时修改字符集试试:
export LANG=en_US.UTF-8
之后重新打开MariaDB客户端执行命令,看输出是否正常。如果想要永久生效,编辑你当前shell的配置文件(比如~/.bashrc或~/.zshrc),把上面的export命令添加进去,保存后重启终端即可。
2. 配置MariaDB客户端的表格输出格式
你可以通过配置文件让MariaDB客户端默认使用规整的表格格式。在用户主目录下创建或编辑.mariadb.cnf(或.my.cnf)文件,添加以下内容:
[client] table_format=aligned
aligned格式会让表格的分隔线更简洁规整,如果你喜欢带边框的样式,也可以换成table_format=boxed。保存配置后重启MariaDB客户端,再执行desc class或show databases就能看到效果了。
3. 临时切换客户端输出格式(无需改配置)
如果不想修改配置文件,每次登录MariaDB后可以用内置命令临时调整格式:
\set table_format aligned
或者试试compact格式(更紧凑的分隔线):
\set table_format compact
执行完这个命令后,再运行查询命令,输出的表格就会按照你设置的格式显示了。
4. 检查终端字体设置
部分非标准等宽字体在渲染分隔线字符时会出现视觉上的“重复短横线”问题。试试把终端字体切换为标准的等宽字体,比如DejaVu Sans Mono、Monospace或者Consolas,之后再测试MariaDB的输出效果。
补充说明
Windows上的MySQL客户端和终端(CMD/PowerShell)的字符集、渲染机制和Linux系统不同,刚好和MySQL的输出格式匹配,所以不会出现这类问题。上面的方法都是针对Linux终端和MariaDB客户端的适配调整,应该能解决你的多余短横线问题,同时保留你想要的水平表格样式。
内容的提问来源于stack exchange,提问作者Snehit Sah

