45Flush tables: 1Open tables: 85Queries per second avg: 17.023
另外可以添加 -i 5 参数,让其每五秒自动刷新之 。
mysqladmin -uroot -p密码 status -i 5
mysqladmin extended-status
同样的可以使用mysqladmin -uroot -p密码 extended-status来查看更多的MySQL运行信息,这种方式和第一种查看的信息基本一样 。
如何查看mysql执行进度有时候我们会不小心对一个大表进行了 update,比如说写错了 where 条件......
此时,如果 kill 掉 update 线程,那回滚 undo log 需要不少时间 。如果放置不管,也不知道 update 会持续多久 。
那我们能知道 update 的进度么?
实验
我们先创建一个测试数据库:
快速创建一些数据:
连续执行同样的 SQL 数次,就可以快速构造千万级别的数据:
查看一下总的行数:
我们来释放一个大的 update:
然后另起一个 session,观察 performance_schema 中的信息:
可以看到,performance_schema 会列出当前 SQL 从引擎获取的行数 。
等 SQL 结束后,我们看一下 update 从引擎总共获取了多少行:
可以看到该 update 从引擎总共获取的行数是表大小的两倍,那我们可以估算:update 的进度 = (rows_examined) / (2 * 表行数)
??小贴士
information_schema.tables 中,提供了对表行数的估算,比起使用 select count(1) 的成本低很多 , 几乎可以忽略不计 。
那么是不是所有的 update,从引擎中获取的行数都会是表大小的两倍呢?这个还是要分情况讨论的 , 上面的 SQL 更新了主键 , 如果只更新内容而不更新主键呢?我们来试验一下:
等待 update 结束,查看 row_examined,发现其刚好是表大?。?
那我们怎么准确的这个倍数呢?
一种方法是靠经验:update 语句的 where 中会扫描多少行 , 是否修改主键,是否修改唯一键,以这些条件来估算系数 。
另一种方法就是在同样结构的较小的表上试验一下,获取倍数 。
这样,我们就能准确估算一个“不小心”执行的大型 update 的进度了 。
怎么判断mysql数据库运行了通过cmd快速启动mysql服务
1
打开电脑的“开始”菜单栏,找到“运行”,在运行框中直接输入:net
start
mysql 。再点击确定按钮,如下图:
2
等上图中cmd命令框中的显示完“mysql
服务正在启动”之后 , 再找到mysql的界面软件SQL
yog打开,就可以直接进入了,如下图:
3
当你可以正常查询数据的时候就表示你的mysql数据库服务是正常运行的,也就是表示我们的启动是成功的 。
END
通过cmd快速关闭mysql服务
我们这里还是讲通过cmd快速关闭mysql服务,不必麻烦的跑到电脑的服务中找出服务项手动关闭 , 打开电脑的“开始”菜单栏,找到“运行”,在运行框中直接输入:net
stop
mysql 。再点击确定按钮,如下图:
等上图中cmd命令框中的显示完“mysql
服务正在停止”之后 , 再到我们前面打开的SQL
yog中输入查询sql语句会报错 , 如下图:
3
执行同样的SQL语句后报错信息:MySQL
server
has
gone
away 。意思就是mysql的服务器已经被关闭了 。这也就意味着我们关闭命令正常执行了 。
关于mysql怎么看正在运行和查看mysql状态的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站 。
推荐阅读
- thinkphpcli参数,thinkphp4
- 如何营销拉存款,拉存款营销段子
- 日本4g显示无服务器,日本无信号
- 公众号怎么弄页面,公众号怎么建页面模版
- c语言用库函数求模 c语言数学库函数大全
- chatgpt免费版,chatGPT免费版入口八戒哥技术博客
- ppt图片怎么设计尺寸,怎么设置ppt图片大小高宽
- tag封装html标签,html tabindex标签
- vb.net获取关闭按钮 vbs关闭窗口代码