插件窝 干货文章 MySQL启动报错提示发生系统错误5,拒绝访问的原因和解决方法

MySQL启动报错提示发生系统错误5,拒绝访问的原因和解决方法

文件 strong mysql 编码 331    来源:    2024-10-16

原因

1.非管理员身份运行,大部分情况都是这个原因

解决方法:

我们只要以管理员身份运行“命令提示符”,执行命令就不会提示“发生系统错误5,拒绝访问。”了,就解决了。以Win10系统为例,点击“开始菜单”-->展开“Windows系统”,右键点击“命令提示符”,选择“更多”,选择“以管理员身份运行”

或者按路径找到如下位置,发送到桌面快捷方式,每次打开就是系统管理员命令窗口了

然后执行启动命令 net start mysql,如下图即可

2.服务名称错误的原因,不是mysql 应该是mysql5或者其它服务名称错误,如下图

会报错服务名无效,解决办法为修改为net start mysqlXX,XX为版本号,如我的8.0就是net start mysql80

win+r 打开运行窗口,输入services.msc 打开服务列表,找到mysql,如下图服务名称是MySQL80,这个 根据版本不同,名称不同,具体以你实际情况为准,应该是mysql57,服务名不区分大小写,然后重新打开管理员运行窗口,执行启动命令 net start mysql57即可;

3.如果服务列表上的mysql服务属性有过改动,要仔细看,把它还原回去,不然后续还会有问题,如果没有改动可以略过此项排查;

以mysql80为例,登录为网络服务,之前看过其它文章把这个改成本地系统了,然后属性里面的登录也改成了本地系统账户,也改了本地账户的权限及用户组,但是还是有问题,最后就把这个还是还原到了网络服务,如下图属性-登录  此账户是网络服务

如果不是网络服务,就点击浏览 ,然后在下面输入要选择的对象名称为: Network Service

然后检查,确定,外面的密码和确认密码为空,应用确定即可,然后直接在服务列表启动服务即可

4.修改过MySQL的配置文件,我的就是这个原因,因为需要开启一些日志,所以动了配置文件,my.ini

为什么修改过配置以后就启动不了了那,两方面原因:

4.1一个是配置文件写的有错误,比如路径,这个要仔细排查下,不能直接拷贝网上的,因为自己的安装路径和别人的不一定完全一样,下面是一个示例配置文件

# MySQL Server 配置

[mysqld]

# 服务器端口
port = 3306

# 数据目录
datadir = /var/lib/mysql

# Socket 文件路径
socket = /var/run/mysqld/mysqld.sock

# 字符集
character-set-server = utf8mb4

# 默认存储引擎
default-storage-engine = InnoDB

# 错误日志文件路径
log-error = /var/log/mysql/error.log

# 慢查询日志
slow-query-log = 1
slow-query-log-file = /var/log/mysql/slow.log
long-query-time = 2

# 最大连接数
max_connections = 100

# 缓存大小
key_buffer_size = 256M
query_cache_size = 128M
innodb_buffer_pool_size = 512M

# 其他配置项...

# 启用查询缓存
query_cache_type = 1
query_cache_limit = 1M
query_cache_size = 128M

# 启用慢查询日志
slow_query_log = 1
slow_query_log_file = /var/log/mysql/slow.log
long_query_time = 2

# 启用二进制日志
log_bin = /var/log/mysql/mysql-bin.log
expire_logs_days = 10
max_binlog_size = 100M

# 启用主从复制
server-id = 1
log_slave_updates = 1
relay_log = /var/log/mysql/relay-bin.log
read_only = 1

# 启用 InnoDB 引擎
default_storage_engine = InnoDB
innodb_file_per_table = 1
innodb_buffer_pool_size = 512M
innodb_log_file_size = 256M

# 配置并发控制
max_connections = 1000
thread_cache_size = 64

# 配置字符集
character_set_server = utf8mb4
collation_server = utf8mb4_unicode_ci

# 配置日志文件路径和大小限制
general_log = 1
general_log_file = /var/log/mysql/general.log
log_error = /var/log/mysql/error.log
max_error_count = 1000

4.2另一方原因是因为配置文件的编码格式变了,导致无法读取所以服务才无法启动了

会有Mysql启动 - 错误1053:服务没有及时响应启动或控制请求

一般是配置文件损坏的原因,其它原因可以网上再查询下

my.ini 文件的编码格式是 ASCII 或 UTF-8。在 Windows 系统上,my.ini 默认使用 ASCII 编码,但也可以选择使用 UTF-8 编码。在 Linux 和 macOS 系统上,my.ini 通常使用 UTF-8 编码。选择适当的编码格式取决于操作系统和 MySQL 版本

修改 my.ini 文件本身的编码格式,你需要使用一个文本编辑器来打开和保存文件,并在保存时选择所需的编码格式。下面是一些常见的文本编辑器中修改编码格式的步骤示例:

  • 使用 Notepad++ 编辑器:
    • 打开 my.ini 文件。
    • 在菜单栏中选择 "编码",然后选择所需的编码格式,例如 "UTF-8" 或 "UTF-8 with BOM"。
    • 保存文件。
  • 使用 Sublime Text 编辑器:
    • 打开 my.ini 文件。
    • 在菜单栏中选择 "File"(文件),然后选择 "Save with Encoding"(另存为指定编码)。
    • 在弹出的菜单中选择所需的编码格式,例如 "UTF-8"。
    • 保存文件。
  • 使用 Visual Studio Code 编辑器:
    • 打开 my.ini 文件。
    • 在底部状态栏中点击当前编码格式(通常是 "UTF-8")。
    • 选择所需的编码格式,例如 "UTF-8 with BOM"。
    • 保存文件。

根据使用的文本编辑器不同,具体步骤可能会有所差异,但基本思路是打开文件、选择所需的编码格式,然后保存文件。请注意,修改 my.ini 文件的编码格式可能会影响 MySQL 服务器的正常运行,请谨慎操作并备份文件

然后再执行启动命令进行测试即可;

以上就是MySQL启动报错提示发生系统错误5,拒绝访问的原因和解决方法的详细内容,更多关于mysql拒绝访问错误5的资料请关注插件窝其它相关文章!