skip_name_resolve
INFO
Rule IDs: sec_004
Overview
- Purpose
- Documented in the MySQL 8.4 manual as a server system variable (scope: Global). Purpose and semantics are described at the linked manual page.
- Dynamic (MySQL 8.4 reference)
- MySQL 8.4 marks this variable as not dynamic (
Dynamic= No). It must be set inmy.cnfor on the command line; changing it requires a restart. - Default value
- OFF (MySQL 8.4)
- Version and product notes
- MariaDB and Percona Server may use different names, defaults, or dynamic behavior; verify their documentation.
- Documentation
- https://dev.mysql.com/doc/refman/8.4/en/server-system-variables.html#sysvar_skip_name_resolve
- Other vendors
What is checked
Rules that reference this variable, with their severity and what each rule detects:
- INFO
sec_004: Set skip_name_resolve=ON. Use IP addresses in GRANT statements. Improves connection speed and avoids DNS failures.
Tuning guidance
- Recommended actions:
- Set skip_name_resolve=ON. Use IP addresses in GRANT statements. Improves connection speed and avoids DNS failures.
- Trade-offs: Security settings protect against unauthorized access and data exposure. Tighter settings may require application changes (e.g., SSL certificates for require_secure_transport, IP-based grants for skip_name_resolve).
Example
-- In my.cnf (requires restart):
skip_name_resolve = ON
-- Then use IPs in GRANT statements
Always validate on a non-production instance first. Use SET PERSIST (MySQL 8.0+) for changes that should survive restarts.