本文共 1174 字,大约阅读时间需要 3 分钟。
参考当前表结构
mysql> desc vm_info;+------------+-------------+------+-----+---------+----------------+| Field | Type | Null | Key | Default | Extra |+------------+-------------+------+-----+---------+----------------+| id | int(11) | NO | PRI | NULL | auto_increment || hostname | varchar(50) | YES | | NULL | || ipaddr | varchar(15) | YES | | NULL | || uuid | varchar(30) | YES | UNI | NULL | || owner | varchar(20) | YES | | NULL | || project | varchar(20) | YES | | NULL | || updatetime | datetime | YES | | NULL | |+------------+-------------+------+-----+---------+----------------+7 rows in set (0.00 sec)
目的, 当前客户会不断执行数据库连接, 测试与数据连接的可用性
主机具有唯一 uuid 值, 可保证一台主机不会被重复插入多条数据,
为记录主机最后的连接时间, 我们只需要更新 updatetime 列
可参考下面方法, 使用 on duplicate key update 的方法, 当遇到重复主机时候, 只更新某个列信息, 很方便
insert into install_system.vm_info (hostname, ipaddr, uuid, owner, project, updatetime) values ('"$hostname"','"$ipaddr"','"$uuid"','"$owner"','"$project"',now()) ON DUPLICATE KEY UPDATE updatetime=now() ;
转载地址:http://qonni.baihongyu.com/