MySQL:将FQDN替换为仅主机名的技术实现需求
解决方案:将MySQL表中的FQDN主机名替换为短主机名
没问题,针对你这个需求,我们可以用MySQL的SUBSTRING_INDEX()函数轻松实现,它能帮我们精准截取第一个点号之前的主机名部分。
具体操作步骤
- 编写UPDATE语句
假设你的表名为host_records(记得替换成你实际的表名),执行以下SQL语句即可完成批量替换:
UPDATE host_records SET host = SUBSTRING_INDEX(host, '.', 1);
- 函数说明
SUBSTRING_INDEX(str, delim, count)的作用是:
str:要处理的目标字符串(这里就是host字段)delim:指定的分隔符(这里用.)count:截取的部分序号,设为1表示取第一个分隔符之前的内容
比如对server1.abc.com执行这个函数,会返回server1;而本身已经是短主机名的server1,因为没有分隔符,函数会直接返回原内容,完全不用担心误修改。
执行后的预期结果
执行完上面的UPDATE语句后,你的表数据会变成:
| host | ipaddress | date |
|---|---|---|
| server1 | 10.1.1.1 | 2011-10-18 22:45:16 |
| server1 | 10.1.1.1 | 2011-12-19 21:56:46 |
| server2 | 11.1.1.1 | 2011-12-18 21:56:46 |
| server2 | 11.1.1.1 | 2011-12-17 21:56:46 |
内容的提问来源于stack exchange,提问作者meallhour
相关产品推荐
相关产品推荐

