mysql+root@localhost
作者:羽度非凡
几个月前写了《MySQL总是停止服务,原来是腾讯云安全防护组件的“锅”》这篇文章,在这篇文章发布后,虽然MySQL服务自动停止的频率降低了,但实际上并没有从根本上解决这个问题,MySQL服务仍然会以大约每周一次的频率自动停止,于是开始寻找其他方法。
其实最根本的方法肯定是升级服务器配置,提升服务器的带宽,但这也就意味着运营成本的增加,对于我博客这种小网站来说,还是寻找其他曲线救国的方案更合适。
看到有网友分享宝塔面板有自动检测MySQL服务状态并自动修复的功能,但我又不喜欢安装各种面板,不过面板的各项功能底层逻辑肯定是通过执行Linux命令完成了,于是就开始考虑通过Linux相关命令实现自动检测MySQL状态的功能,这里要做的有两步:
1.新建Shell脚本,脚本实现的功能是检测MySQL服务状态,如果发现当前运行的程序进程中没有MySQL,那么就自动执行启动MySQL服务的命令,我们可以在/root/目录下新建一个check_mysql.sh的脚本文件,脚本的内容:
#!/bin/bash
pgrep -x mysqld &> /dev/null
if [ $? -ne 0 ];then
/etc/init.d/mysqld start
fi
2.借助计划任务实现脚本自动化执行,主要目的是做到无人值守自动检测:
通过命令 crontab -e进入计划任务的编辑页面,输入任务命令
*/15 * * * * /root/check_mysql.sh
这条命令的意思是每隔15分钟执行一次check_mysql.sh检测脚本。
最终实现的效果是系统每15分钟执行一次check_mysql.sh脚本,如果发现当前运行的程序进程中没有MySQL,那么Shell脚本将会自动执行启动MySQL服务的命令。
从3月份到现在的6月份,至少我每天打开非凡博客的时候都能正常访问,或许在我没有访问的时间里也曾偶尔出现过MySQL服务自动停止,但至少等到我每次发现以后再动手启动了。
查看文章精彩评论,请前往什么值得买进行阅读互动
","gnid":"945649a3e7d272d87","img_data":[{"flag":2,"img":[{"desc":"","height":"548","title":"","url":"https://p0.ssl.img.360kuai.com/t015e8a894ec2788380.jpg","width":"600"},{"desc":"","height":"146","title":"","url":"https://p0.ssl.img.360kuai.com/t01ec7ca115c9a4afa0.jpg","width":"555"},{"desc":"","height":"160","title":"","url":"https://p0.ssl.img.360kuai.com/t011908cc1a615a5ca6.jpg","width":"485"}]}],"original":0,"pat":"art_src_1,fts0,sts0","powerby":"hbase","pub_time":1686726877000,"pure":"","rawurl":"http://zm.news.so.com/752d7cb7aab7229beaf66081ea3678c8","redirect":0,"rptid":"69ad91e678d39c62","rss_ext":[],"s":"t","src":"什么值得买","tag":[{"clk":"ktechnology_1:linux","k":"linux","u":""},{"clk":"ktechnology_1:mysql","k":"mysql","u":""}],"title":"非凡闲扯淡 篇三十七:借助shell脚本,解决MySQL服务自动停止的问题
郎世庆1225几种破解MySQL数据库root密码的方法 -
茹版皆13953059965 ______ 方法二 使用mysqladmin,这是前面声明的一个特例. mysqladmin -u root -p password mypasswd 输入这个命令后,需要输入root的原密码,然后root的密码将改为mypasswd. 把命令里的root改为你的用户名,你就可以改你自己的密码了. Unix...
郎世庆1225mysql中的root密码忘记了怎么办 -
茹版皆13953059965 ______ 1.以系统管理员登陆;2.停止MySQL服务;3.进入CMD,进入MySQL的安装目录,假设是D:/MySQL/MySQL Server 5.0/;4.跳过权限检查启动MySQL,D:/MySQL/MySQL Server 5.0/bin/mysqld-nt –skip-grant-tables5.重新打开一个CMD,进入D:/...
郎世庆1225如何恢复mysql数据库的root账户权限 -
茹版皆13953059965 ______ 一、 用SET PASSWORD命令 mysql -u root mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpass'); 二、 用mysqladmin mysqladmin -u root password "newpass" 如果root已经设置过密码,采用如下方法 mysqladmin ...
郎世庆1225怎么让mysql数据库能远程用root用户登录 -
茹版皆13953059965 ______ 试试:GRANT ALL PRIVILEGES ON *.* to root@'%' ; 重载授权表: FLUSH PRIVILEGES; 退出mysql数据库: exit 或者直接修改mysql数据库的user表的host 修改成%就可以了, FLUSH PRIVILEGES; exit;
郎世庆1225如何重置MySQL数据库的root密码 -
茹版皆13953059965 ______ 1、编辑MySQL配置文件:windows环境中:%MySQL_installdir%\my.ini //MySQL安装目录下的my.ini配置文件.linux环境中:/etc/my.cnf 在[MySQLd]配置段添加如下一行:skip-grant-tables 保存退出编辑.2、然后重启MySQL服务 windows环境...
郎世庆1225mysql 建用户 用root@localhost -
茹版皆13953059965 ______ 没有权限,用root用户登录试试,-p表示密码,回车后要输入root的密码.mysql -uroot -p
郎世庆1225怎么设置mysql root密码 -
茹版皆13953059965 ______ 1、编辑MySQL的配置文件:my.ini 一般在MySQL安装目录下有my.ini即MySQL的配置文件.在此配置文件的最后添加如下一行:skip-grant-tables 保存退出编辑.2、然后重启MySQL服务 在命令行下执行:net stop MySQL net start MySQL3、...
郎世庆1225请问如何打开MySQL中root账户的远程登录 -
茹版皆13953059965 ______ 基于安全考虑root账户一般只能本地访问,但是在开发过程中可能需要打开root的远程访问权限.下面是基本的步骤:1、登录到mysql中,为root进行远程访问的授权,执行下面的命令...
郎世庆1225教你如何建立mysql远程连接root权限用户 -
茹版皆13953059965 ______ 以下语句具有和ROOT用户一2113样的权限.大家在拿站时应该碰到过5261.root用户的mysql,只可以本地连,对外拒绝连接.以下4102方法可以帮助你解决这个问题了,下面的语句功能是,建立一个用户为itpro 密码123 权限为和root一样....
郎世庆1225如何设置mysql root密码 -
茹版皆13953059965 ______ 进入Mysql数据库命令行方式有两种方式: 方式一:在Mysql开始菜单里包含Mysql命令行客户端,只要点击输入root的密码即可进入. 方式二:在DOS模式下(CMD模式)定位到Mysql安装目录下在子目录bin,调用mysql.exe进入,即=======...