分类 运维 下的文章

启动错误信息如下:

mysqld.service - MySQL Server
   Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
   Active: failed (Result: start-limit) since Mon 2021-12-20 10:30:05 CST; 1s ago
     Docs: man:mysqld(8)
           http://dev.mysql.com/doc/refman/en/using-systemd.html
  Process: 2996 ExecStart=/usr/local/mysql/bin/mysqld --daemonize --pid-file=/usr/local/mysql/mysqld.pid $MYSQLD_OPTS (code=exited, status=1/FAILURE)
  Process: 2978 ExecStartPre=/usr/local/mysql/bin/mysqld_pre_systemd (code=exited, status=0/SUCCESS)

Dec 20 10:30:05 iZbp188uiv7i1p64qq0oicZ systemd[1]: Failed to start MySQL Server.
Dec 20 10:30:05 iZbp188uiv7i1p64qq0oicZ systemd[1]: Unit mysqld.service entered failed state.
Dec 20 10:30:05 iZbp188uiv7i1p64qq0oicZ systemd[1]: mysqld.service failed.
Dec 20 10:30:05 iZbp188uiv7i1p64qq0oicZ systemd[1]: mysqld.service holdoff time over, scheduling restart.
Dec 20 10:30:05 iZbp188uiv7i1p64qq0oicZ systemd[1]: Stopped MySQL Server.
Dec 20 10:30:05 iZbp188uiv7i1p64qq0oicZ systemd[1]: start request repeated too quickly for mysqld.service
Dec 20 10:30:05 iZbp188uiv7i1p64qq0oicZ systemd[1]: Failed to start MySQL Server.
Dec 20 10:30:05 iZbp188uiv7i1p64qq0oicZ systemd[1]: Unit mysqld.service entered failed state.
Dec 20 10:30:05 iZbp188uiv7i1p64qq0oicZ systemd[1]: mysqld.service failed.

一 查找配置文件
find / -name my.cnf
/usr/local/mysql/etc/my.cnf

二 查看日志文件路径
cat /usr/local/mysql/etc/my.cnf | grep log-error
/web/logs/mysql/mysqld.log

三 查看日志文件尾页
tail -200 /web/logs/mysql/mysqld.log
2021-12-20T02:30:03.534858Z 0 [ERROR] Unix socket lock file is empty /tmp/mysql.sock.lock.
2021-12-20T02:30:03.534864Z 0 [ERROR] Unable to setup unix socket lock file.
2021-12-20T02:30:03.534867Z 0 [ERROR] Aborting

四 排除ERROR内容
rm -rf ./mysql.sock.lock

首先替换掉换行符前面的空格(不能是换行符后面的,否则有些文档的缩进会出现问题)。
CTRL+H 选择特殊格式中的段落标记
^p替换城^p(多次重复)

然后替换掉多余的换行符
^p^p替换城^p(多次重复)

一 安装
yum list | grep supervisor

yum install supervisor -y

二 配置
find / -name supervisord.conf

vim /etc/supervisord.conf

cd /etc/supervisord.d/

vim huchangyi.ini

#项目名
[program:huchangyi]
#脚本目录
directory=/home/www/huchangyi
#脚本执行命令
command=python3 /home/www/huchangyi/index.py

#supervisor启动的时候是否随着同时启动,默认True
autostart=true
#当程序exit的时候,这个program不会自动重启,默认unexpected,设置子进程挂掉后自动重启的情况,有三个选项,false,unexpected和true。如果为false的时候,无论什么情况下,都不会被重新启动,如果为unexpected,只有当进程的退出码不在下面的exitcodes里面定义的
autorestart=false
#这个选项是子进程启动多少秒之后,此时状态如果是running,则我们认为启动成功了。默认值为1
startsecs=1

#脚本运行的用户身份 
user = root

#日志输出 
stderr_logfile=/tmp/blog_stderr.log 
stdout_logfile=/tmp/blog_stdout.log 
#把stderr重定向到stdout,默认 false
redirect_stderr = false
#stdout日志文件大小,默认 50MB
stdout_logfile_maxbytes = 10MB
#stdout日志文件备份数
stdout_logfile_backups = 7

三 常用命令
supervisorctl status //查看所有进程的状态
supervisorctl stop xx //停止xx
supervisorctl start xx //启动xx
supervisorctl restart xx //重启xx
supervisorctl update //配置文件修改后使用该命令加载新的配置
supervisorctl reload //重新启动配置中的所有程序

四 遇见的问题
supervisor.sock no such file 解决方法
touch /var/run/supervisor.sock
chmod 777 /var/run/supervisor.sock
supervisorctl update
supervisorctl status

supervisor管理python进程.txt