[toc]

问题源自修改mysql密码的时候执行mysqld –skip-grant-tables之后就不动了

小伙伴mysql密码忘记了想找回密码他输入了

mysqld_safe --skip-grant-tables

然后就失去控制了,一开始以为是safe的问题后来的得知


mysqld --skip-grant-tables

上面命令看网上有的小伙伴说也会驻留无法退出
ctrl+c无法退出当前进程
改密码只能再开一个窗口,貌似假如退出了也就无法无密码登陆了。

主角登场 ctrl+z

ctrl + z 让进程在后台运行 再运行

mysql -u root

即可进去为所欲为了
ctrl + z后,进程是暂停到后台
这里涉及到作业管理的概念

作业管理

下面是我摘抄过来的基本使用方法,在最后我做了补充。

1.将“当前”作业放到后台“暂停”:ctrl+z



2.观察当前后台作业状态:jobs

参数:

-l 除了列出作业号之外同时列出PID  

-r:列出仅在后台运行(run)的作业

-s:仅列出暂停的作业



3.将后台作业拿到前台处理:fg



fg %jobnumber (%可有可无)



4.让作业在后台运行:bg

ctrl+z让当前作业到后台去暂停,bg 作业号就可以在后台run



5.管理后台作业:kill

我们可以让一个已经在后台的作业继续执行,也可以让该作业使用fg拿到前台。如果直接删除该作业,或者让作业重启,需要给作业发送信号。

kill -signal %jobnumber

参数:

-l 列出当前kill能够使用的信号

signal:表示给后台的作业什么指示,用man 7 signal可知

-1(数字):重新读取一次参数的设置文件(类似reload)

-2:表示与由键盘输入ctrl-c同样的动作

-9:立刻强制删除一个作业

-15:以正常方式终止一项作业。与-9不一样。

1.小伙伴也可以使用kill 前使用jobs -l看下进程pid再kill pid,kill -signal %jobnumber的方法我试又一次是不好用的挠头中后来好用了 -signal是参数可以不加。

2.在用管理员执行一个命令后,用Ctrl+Z把命令转移到了后台。导致无法退出root的。

ps -ef | grep vim

输入命令:exit
终端显示:There are stopped jobs.
解决很简单 kill 掉后台进程即可当然也可以自己正常关闭

分类: linux

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注