chore: script remplit fqdn manquants depuis hostname.domain_ltd (LOWER + strip point initial du domain_ltd)
This commit is contained in:
parent
c19309fec2
commit
53144dcf43
46
fill_fqdn_from_domain_ltd.sql
Normal file
46
fill_fqdn_from_domain_ltd.sql
Normal file
@ -0,0 +1,46 @@
|
|||||||
|
-- Remplit les fqdn manquants à partir de hostname + domain_ltd.
|
||||||
|
-- Cible : servers où fqdn IS NULL/vide ET domain_ltd renseigné.
|
||||||
|
-- Idempotent.
|
||||||
|
|
||||||
|
\echo '═══ AVANT ═══'
|
||||||
|
|
||||||
|
SELECT 'fqdn_null' AS scope, COUNT(*) FROM public.servers WHERE fqdn IS NULL OR fqdn = ''
|
||||||
|
UNION ALL
|
||||||
|
SELECT 'fqdn_null_avec_dltd' AS scope, COUNT(*) FROM public.servers
|
||||||
|
WHERE (fqdn IS NULL OR fqdn = '') AND domain_ltd IS NOT NULL AND domain_ltd <> ''
|
||||||
|
UNION ALL
|
||||||
|
SELECT 'fqdn_null_sans_dltd' AS scope, COUNT(*) FROM public.servers
|
||||||
|
WHERE (fqdn IS NULL OR fqdn = '') AND (domain_ltd IS NULL OR domain_ltd = '')
|
||||||
|
UNION ALL
|
||||||
|
SELECT 'fqdn_total' AS scope, COUNT(*) FROM public.servers WHERE fqdn IS NOT NULL AND fqdn <> '';
|
||||||
|
|
||||||
|
\echo '═══ APERÇU 10 LIGNES À MAJ ═══'
|
||||||
|
|
||||||
|
SELECT hostname,
|
||||||
|
domain_ltd,
|
||||||
|
LOWER(hostname::text) || '.' || REGEXP_REPLACE(domain_ltd, '^\.+', '') AS fqdn_calcule
|
||||||
|
FROM public.servers
|
||||||
|
WHERE (fqdn IS NULL OR fqdn = '')
|
||||||
|
AND domain_ltd IS NOT NULL AND domain_ltd <> ''
|
||||||
|
ORDER BY hostname
|
||||||
|
LIMIT 10;
|
||||||
|
|
||||||
|
\echo '═══ UPDATE ═══'
|
||||||
|
|
||||||
|
UPDATE public.servers
|
||||||
|
SET fqdn = LOWER(hostname::text) || '.' || REGEXP_REPLACE(domain_ltd, '^\.+', ''),
|
||||||
|
updated_at = NOW()
|
||||||
|
WHERE (fqdn IS NULL OR fqdn = '')
|
||||||
|
AND domain_ltd IS NOT NULL AND domain_ltd <> '';
|
||||||
|
|
||||||
|
\echo '═══ APRÈS ═══'
|
||||||
|
|
||||||
|
SELECT 'fqdn_null' AS scope, COUNT(*) FROM public.servers WHERE fqdn IS NULL OR fqdn = ''
|
||||||
|
UNION ALL
|
||||||
|
SELECT 'fqdn_null_avec_dltd_residuel' AS scope, COUNT(*) FROM public.servers
|
||||||
|
WHERE (fqdn IS NULL OR fqdn = '') AND domain_ltd IS NOT NULL AND domain_ltd <> ''
|
||||||
|
UNION ALL
|
||||||
|
SELECT 'fqdn_null_sans_dltd' AS scope, COUNT(*) FROM public.servers
|
||||||
|
WHERE (fqdn IS NULL OR fqdn = '') AND (domain_ltd IS NULL OR domain_ltd = '')
|
||||||
|
UNION ALL
|
||||||
|
SELECT 'fqdn_total' AS scope, COUNT(*) FROM public.servers WHERE fqdn IS NOT NULL AND fqdn <> '';
|
||||||
Loading…
Reference in New Issue
Block a user