确定数据库服务器返回的记录大小(Kb,Mb)?

时间:2009-02-28 15:04:35

标签: database

有没有办法确定数据库服务器返回的记录大小?

1 个答案:

答案 0 :(得分:2)

您可以估算记录大小:

    通过更改代码来总结和打印检索到的字段的大小(需要指定是否可以更改客户端代码),
  • 在客户端应用程序中,或
  • 在操作系统级别,使用stracetruss跟踪read在与数据库连接关联的文件句柄上报告的字节数量(使用lsof获取文件句柄和TCP / IP连接之间的映射),前提是操作系统是Unix的一种风格(您需要指定运行客户端或数据库的操作系统< / em>),或
  • 如果客户端通过物理网络接口(而不是通过环回连接)连接到服务器,则使用wiresharktcpdump等工具
  • 在网络级 - 您需要指定客户端应用程序连接到数据库的方式)或
  • 通过启用适当的日志记录或查看数据库统计信息(例如MySQL上的SHOW TABLE STATUS LIKE "my_table",Postgres的SELECT SUM(avg_width) FROM pg_stats WHERE table_name LIKE 'my_table'等)获得平均行,
  • 在数据库级感兴趣的表的大小,只要数据库支持它(您需要指定您正在使用的数据库)否则您可以从数据库转储计算您自己的统计信息。