mysql - MySQL Uptime 的值 "computed"是怎么回事?

标签 mysql percona uptime

根据 MySQL 文档,全局变量 Uptime 定义为“服务器已启动的秒数。”。

但是,有人可以向我解释一下这个值实际上是如何计算的吗?它使用什么作为引用,系统时间?

我问这个问题是因为我刚刚遇到了一个奇怪的情况:当使用 MySQL 重新启动 VM 时,ntpd 服务终止,并且在启动时(因为没有使用 chkconfig),时间偏移了 +8 小时,您可以请参阅以下内容:

15:01:00 hostname shutdown[30383]: shutting down for system reboot
15:01:00 hostname init: Switching to runlevel: 6
...
15:01:06 hostname ntpd[27553]: ntpd exiting on signal 15
15:01:06 hostname syslog-ng[27399]: Termination requested via signal, terminating;
...
23:04:03 hostname kernel: Bootdata ok 

MySQL 错误日志中记录了相同的转变:

15:01:03  InnoDB: Starting shutdown...
15:01:05  InnoDB: Shutdown completed; log sequence number 2746293826
15:01:06 [Note] /usr/sbin/mysqld: Shutdown complete          

15:01:06 mysqld_safe mysqld from pid file /var/lib/mysql/data/hostname.pid ended
23:04:06 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql/data

在我们通过启动 ntpd 修正时间后,正常运行时间似乎发生了变化:

mysql> show global status like 'Uptime';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| Uptime        | 18005 |
+---------------+-------+

1 row in set (0.00 sec)

mysql> show global status like 'Uptime_since_flush_status';
+---------------------------+-------+
| Variable_name             | Value |
+---------------------------+-------+
| Uptime_since_flush_status | 18007 |
+---------------------------+-------+

这种行为是否可能,或者可能与其他因素有关?

感谢您的耐心和理解。

最佳答案

应该很简单。应用程序将从启动时创建一个时间戳并将其与当前时间进行比较。这些时间是从系统时间给出的。

因此,如果修改系统时间,则不会调整初始时间戳。它将时间变化视为当前时间,并将其作为比较。

关于mysql - MySQL Uptime 的值 "computed"是怎么回事?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23916672/

相关文章:

php - innobackupex - 从命令行获取输出

perl - 自动重启关闭的 FastCGI 进程的好策略是什么?

process - 监控 Windows 上的进程正常运行时间

mysql - 使用 SQL 分配资源(行)

c# - 上下文附加方法异常

MySQL:变量 'general_log_file' 无法设置为 '~/path/to/new/file' 的值

ios - 获取 iOS 系统正常运行时间, sleep 时不会暂停

php - codeigniter数据库查询/mysql

MySQL fatal error : Can't open and lock privilege tables: Incorrect file format 'user'

mysql - 如何让 mysql CASE 或 IF 跳过一条记录?