每天进步一点点
服务器与客户端的时间同步
上一篇 /
下一篇 2013-07-09 16:41:17
/ 个人分类:linux
测试时,从客户端(
windows环境)发个数据到服务端;入库后,发现一个操作时间取的客户端的时间,入库时间取的服务端的时间,而客户端与服务端往往时间不一致,产生一些误差,甚至出现入库时间早于操作时间这种逻辑错误。
解决办法:服务器与客户端的时间同步,方法如下:
一、设置基准时间服务器(Windows)
默认情况下,WINDOWS是作为NTP(Network
Time Protocol)客户端工作的 ,所以必须通过修改注册表,以使系统作为NTP服务器运行。
1. 修改注册表的键值:
Run->regedit
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time
\TimeProviders\NtpServer内的Enabled为1,打开NTP服务器功能.
2. 修改注册表键值
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time
\Config下的 AnnounceFlags为5.该设定强制主机将它自身宣布为可靠的时间源.如果不修改此项则可能报错:时间例子被拒绝,因为:对等机器的层次(stratum)不主机层次少.
3. 重启w32time服务
Run->cmd进入命令行:net stop w32time net start
w32time,此时在客户端就能进行时钟同步了。
时间同步服务客户端(Linux、Windows)
Linux:
1、增加同步时间的定时任务:
crontab –e 进入定时任务编辑对话框
具体操作同vi编辑器插入文本类命令(按“Esc”键,按“i”键即可在光标前输入文本,输入完成后,按“Esc”键,输入“:wq!”保存并退出。)
2、编辑时间同步的命令
*/15 * * * * /usr/sbin/ntpdate
time-server-ip >>
/var/log/ntpdate.log
/usr/sbin/ntpdate
192.168.2.203 >> /var/log/ntpdate.log
命令说明:
*/15 * * * *:定时任务的调度器;从左至右分别表示分、小时、天、月、周。
这个例子表示15分钟同步一次。
time-server-ip:时间服务器的ip地址,
/var/log/ntpdate.log:时间同步的日志文件。
3、安装ntp
查看系统版本,确定系统版本为CentOS 5.3
[root@localhost etc]# lsb_release -a
LSB Version:
:core-3.1-ia32:core-3.1-noarch:graphics-3.1-ia32:graphics-3.1-noarch
Distributor ID: CentOS
Description: CentOS release
5.3 (Final)
Release: 5.3
Codename: Final
find /usr/sbin/ntpdate如果能找到,输入crontab–l查看定时任务设置,如果找不到ntpdate,则需安装ntp,方法如下:
将ntp-4.2.2p1-9.el5.centos.i386.rpm传到/home目录下,执行如下命令,进行安装。
# rpm -ivh ntp-4.2.2p1-9.el5.centos.i386.rpm
收藏
举报
TAG: