mysql作为常用的关系型数据库,其服务是否正常运行直接影响上层应用的可用性,不同操作系统下查看mysql启动状态的方式各有不同,用户可以根据自身使用的系统选择对应的操作方法。
Linux系统查看mysql是否启动
使用systemctl命令查看(适用于使用systemd的系统)
目前主流的Linux发行版如CentOS 7+、Ubuntu 16.04+都采用systemd作为服务管理器,可以通过以下命令查看mysql服务状态:
# 查看mysql服务状态,不同系统服务名可能是mysql或mysqld systemctl status mysql # 如果上面的命令提示服务不存在,尝试使用mysqld作为服务名 systemctl status mysqld
如果输出中包含active (running)字样,说明mysql服务已经正常启动;如果显示inactive (dead)则说明服务未启动。
使用ps命令查看进程
通过查看系统进程列表,确认是否存在mysql相关的运行进程:
# 过滤mysql相关进程 ps -ef | grep mysql # 更精准的过滤方式,排除grep本身的进程 ps -ef | grep mysql | grep -v grep
如果命令输出中有mysql或mysqld相关的进程信息,说明mysql服务正在运行。
使用mysqladmin工具验证
mysql自带的管理工具mysqladmin也可以用来验证服务状态:
# 使用mysqladmin的ping命令检测服务 mysqladmin -u root -p ping
如果输入密码后返回mysqld is alive,说明mysql服务正常运行。
Windows系统查看mysql是否启动
通过服务管理器查看
按下Win+R组合键,输入services.msc回车打开服务管理窗口,在服务列表中找到名为MySQL的服务,查看其状态列是否显示正在运行,如果是则说明服务已启动。
使用命令行查看
打开命令提示符或者PowerShell,执行以下命令:
# 查看所有服务中包含mysql的服务状态 sc query mysql
如果输出中STATE字段显示为RUNNING,说明mysql服务已经启动。也可以通过任务管理器切换到详细信息标签,查看是否存在mysqld.exe进程来判断。
macOS系统查看mysql是否启动
使用launchctl命令查看
macOS下使用launchd管理服务,执行以下命令查看mysql状态:
# 查看mysql相关服务加载状态 launchctl list | grep mysql
如果输出中有对应的mysql服务条目,且PID列不为空,说明服务正在运行。
使用mysql命令连接测试
直接在终端执行mysql连接命令,验证服务是否可用:
# 尝试连接本地mysql服务 mysql -u root -p
如果能够正常进入mysql交互界面,说明服务已经正常启动并可以对外提供服务。
通用验证方法
无论使用什么操作系统,都可以通过尝试连接mysql服务来最终确认状态,连接成功则说明服务正常运行。如果连接时提示Can't connect to MySQL server on 'localhost'这类错误,大概率说明mysql服务没有启动,或者端口、权限配置存在问题。