MariaDB:主机“127.0.0.1”没有特权

MariaDB:主机“127.0.0.1”没有特权

我的 Ghost 实例想要连接到我的 MariaDB,但是错误是:

Message: 'ER_HOST_NOT_PRIVILEGED: Host '127.0.0.1' is not allowed to connect to this MariaDB server'

这是我的my.cnf:

[server]
skip-name-resolve
innodb_buffer_pool_size = 128M
innodb_buffer_pool_instances = 1
innodb_flush_log_at_trx_commit = 2
innodb_log_buffer_size = 32M
innodb_max_dirty_pages_pct = 90
query_cache_type = 1
query_cache_limit = 2M
query_cache_min_res_unit = 2k
query_cache_size = 64M
tmp_table_size= 64M
max_heap_table_size= 64M
slow-query-log = 1
slow-query-log-file = /var/log/mysql/slow.log
long_query_time = 1
bind-address = 127.0.0.1

[client-server]
!includedir /etc/mysql/conf.d/
!includedir /etc/mysql/mariadb.conf.d/

[client]
default-character-set = utf8mb4

[mysqld]
character-set-server = utf8mb4
collation-server = utf8mb4_general_ci
binlog_format = MIXED
innodb_large_prefix=on
innodb_file_format=barracuda
innodb_file_per_table=1

答案1

我怀疑你的问题在于你设置了skip-name-resolve

默认情况下,MySQL/MariaDB 用户数据库仅包含允许从 访问的条目localhost。但是,如果您跳过名称解析,则 MySQL 不会将您的连接从 转换127.0.0.1localhost,因此无法将您的连接匹配到任何允许连接的主机。

移除skip-name-resolve并重试。

如果您确实想保留此选项,则需要在禁用时创建可以从其连接的 MySQL 用户::1127.0.0.1如果您仍使用 IPv4)skip-name-resolve,然后重新启用它。

相关内容