mysql - json 格式的输出数据库大小(来自 Centos7 的 Mariadb)

标签 mysql json linux bash shell

任何人都知道如何以 json 格式输出此数据 Full output using mysql command .我不知道如何才能一一得到它们。使用 Bash 脚本。提前谢谢你:)

基本上,脚本需要计算每个客户端/数据库名称每 GB 的数据库大小。然后以json格式发送。

示例输出:

{
    "client_code": "information_schema",
    "key": "disk_usage",
    "value": "0.000069"
  },
  {
    "client_code": "mysql",
    "key": "disk_usage",
    "value": "0.000611"
  },
  {
    "client_code": "newdb",
    "key": "disk_usage",
    "value": "1GB"
  }
]

最佳答案

您需要将 --json 传递给 mysql 命令行查询以获取 JSON 格式的输出。关于此的更多信息 here

select table_schema, sum((data_length+index_length)/1024/1024) AS MB from information_schema.tables group by 1; | mysqlsh --json=pretty --sqlc --uri root@192.168.1.141:3306

编辑:

尽管在 MySQL 或 MariaDB 中尚无法在没有第 3 方应用程序的情况下直接输出 JSON。也就是说,找到了一个有趣的帖子,将普通原子表转换为 BLOB 表并使用 column_json() 函数对其进行解析。你可以找到它here , 如果您使用 CONNECT 进行数据伪造,那么您可能会发现 this文章很有用。

关于mysql - json 格式的输出数据库大小(来自 Centos7 的 Mariadb),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44148415/

相关文章:

c - 如何在 Windows/Linux C 上查看 CPU 名称、型号、速度?

PHP bin2hex 与 mysql

mysql - NodeJS mysql 获取相关数据

java - 编辑 JSON 字符串的最有效方法

javascript - PHP 使用 AJAX 和 DataTables 发布数据

arrays - 在 postgres 中查询 JSON[] 类型

mysql - 想知道sql语句是否正确

php - 用于获取未提交特定一周时间的用户数据的 SQL 查询?

c - 编写 Linux shell 时管理标准输出/标准输入

linux - 由于对 Nuget 的 SSL 身份验证,docker linux 容器中的 .NET Core 构建失败