大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
在剖析服务器性能的过程中,慢查询是一个很好的工具。
创新互联主要从事网站制作、成都网站设计、网页设计、企业做网站、公司建网站等业务。立足成都服务博州,十年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:028-86922220
我们可以通过设置slow_query_log来开启慢查询日志,long_query_time属性来设置慢查询定义阈值,设置slow_query_log_file来定义慢查询日志的存储文件。
当前环境是windows10,Mysql8.0.15版本。
show global variables like 'slow_query%'
show global variables like 'long_query%'
set global slow_query_log_file='F:ATempslowly.log'
set global long_query_time=2,单位为秒,可以通过设置long_query_time为0 来捕获所有的查询。
select sleep(3);
生成的日志:
C:Program FilesMySQLMySQL Server 8.0binmysqld.exe, Version: 8.0.15 (MySQL Community Server - GPL). started with:
TCP Port: 3306, Named Pipe: MySQL
Time Id Command Argument
# Time: 2021-05-19T14:38:24.960151Z
# User@Host: root[root] @ localhost [::1] Id: 14
# Query_time: 3.000456 Lock_time: 0.000000 Rows_sent: 1 Rows_examined: 0
use env;
SET timestamp=1621435101;
select sleep(3)
LIMIT 0, 1000;
包含的信息包括执行查询的用户,查询的语句以及发起时间等。
正在学习,如果有误或不足,请指出交流。
在 Ubuntu 中修改 MySQL 的 bind_address 配置可能会比较麻烦,因为需要修改多个配置文件。
1、首先,你需要在 /etc/mysql/mysql.conf.d/mysqld.cnf 中修改 bind_address 配置,将其设置为你想要绑定的 IP 地址。
2、之后,你需要在 /etc/mysql/mariadb.conf.d/50-server.cnf 中修改 bind-address 配置,将其设置为与 mysqld.cnf 中相同的值。
3、如果这样仍然无法解决问题,可能是 MySQL 的权限问题。请确认登录 MySQL 的用户是否有权限修改 bind_address 的值,或者你可以使用root账户登陆进行修改。
4、如果这些都无法解决问题,你可以尝试重启 MySQL 服务器,或者检查是否有其他配置文件或脚本在覆盖你的修改。
总之,需要花时间和细心地检查配置文件,确认所有相关的配置都已经修改。
首先打开MySQL数据库MySQL Workbench 6.3 CE,这个是MySQL数据库的管理工具
2
点击Server Status
3
管理界面上则显示了MySQL的服务状态
4
红色圈出内容即为MySQL的配置文件my.ini,而且往下拉也有各种文件的具体位置和数据的存储位置,这样看来就一目了然了
5
接下来我们就根据界面上所显示的位置,例如小编的位置就是C:\ProgramData\MySQL\MySQL Server5.7\my.ini,在文件资源管理器的地址来输入,就可以跳转到文件所在位置,此步应根据自己的MySQL安装位置来操作。如果直接输入地址,提示错误信息,此时只要输入C:\ProgramData\,(视自己的安装位置而定)再对应找就行了
6
打开文件就可以对端口、文件存储位置等各种配置信息进行修改,修改之后重启数据库服务
登入mysql:
mysql -h localhost -u root -p
然后会让输入密码
查看当前配置参数(wait_timeout为例):
show session variables like '%wait_timeout%'; (或去掉session也一样)这是当前会话配置参数
现在我们来改这个值:
set wait_timeout=90;
然后我们一起再查看下当前配置参数:
show variables like '%wait_timeout%';
这是修改当前会话配置,当退出再新起一个会话时就会恢复原样。
想在所有会话都有效可以设置全局配置,参数把session改为global就可以了
set global wait_timeout=90;后再查看
show global variables like '%wait_timeout%';
再退出后重新进入看看,值还是在。