SQL慢查询

基本操作

打开防火墙

firewall-cmd --zone=public --add-port=3306/tcp --permanent
firewall-cmd --reload

安装MySQL

## 删除已安装mysql
rpm -qa | grep mysql
yum list installed | grep mysql
## 下载源
wget http://repo.mysql.com/mysql57-community-release-el7-8.noarch.rpm
## 安装rpm
rpm -ivh mysql57-community-release-el7-8.noarch.rpm
## 安装MySQL
yum install mysql-server
## 启动服务
systemctl start mysql
## 开机自启动
systemctl enable mysql
## 查看mysql 密码
grep "password" /var/log/mysqld.log
## 进入mysql
mysql -u root -p
## 下面是在本地时,为登录方便而简化,线上需高安全
set global validate_password_policy=0;
set global validate_password_length=1;
SHOW VARIABLES LIKE 'validate_password%';
flush privileges;
## 更改当前密码
SET PASSWORD = PASSWORD('root');
## 设置用户 root 可以在任意 IP 下被访问:
grant all privileges on *.* to root@"%" identified by "root";
flush privileges;
mysql配置
vim /etc/my.cnf
## 在 [mysqld] 前添加如下代码
[client]
default-character-set=utf8
忘记密码时
service mysqld stop
mysqld_safe --user=root --skip-grant-tables --skip-networking &
mysql -u root
一些文件的存放目录
## 配置文件
vim /etc/my.cnf
## 存放数据库文件的目录
cd /var/lib/mysql
## 日志记录文件
vim /var/log/ mysqld.log
## socket文件
/var/run/mysqld/mysqld.pid

慢查询配置

mysql> show variables like 'slow_query_log';
+----------------+-------+
| Variable_name | Value |
+----------------+-------+
| slow_query_log | OFF |
+----------------+-------+
1 row in set (0.05 sec)
## my.cnf里面添加
# 添加慢查询日志
log_output=file
slow_query_log=on
slow_query_log_file = /tmp/mysql-slow.log
log_queries_not_using_indexes=on
long_query_time = 1 mysql> show variables like 'slow_query_log';
+----------------+-------+
| Variable_name | Value |
+----------------+-------+
| slow_query_log | ON |
+----------------+-------+
1 row in set (0.05 sec) mysql> show variables like '%quer%';
+----------------------------------------+---------------------+
| Variable_name | Value |
+----------------------------------------+---------------------+
| binlog_rows_query_log_events | OFF |
| ft_query_expansion_limit | 20 |
| have_query_cache | YES |
| log_queries_not_using_indexes | ON |
| log_throttle_queries_not_using_indexes | 0 |
| long_query_time | 1.000000 |
| query_alloc_block_size | 8192 |
| query_cache_limit | 1048576 |
| query_cache_min_res_unit | 4096 |
| query_cache_size | 1048576 |
| query_cache_type | OFF |
| query_cache_wlock_invalidate | OFF |
| query_prealloc_size | 8192 |
| slow_query_log | ON |
| slow_query_log_file | /tmp/mysql-slow.log |
+----------------------------------------+---------------------+
15 rows in set (0.06 sec) ## 进入linux慢日志
service mysqld reload
cat /tmp/mysql-slow.log
## 实时查看日志
tail -f /tmp/mysql-slow.log

安装percona-toolkit

## 安装依赖
rpm -qa perl-DBI perl-DBD-MySQL perl-Time-HiRes perl-IO-Socket-SSL
## 下载 rpm
yum install http://www.percona.com/downloads/percona-release/redhat/0.1-4/percona-release-0.1-4.noarch.rpm
## 查看
yum list | grep percona-toolkit
## yum install
yum install percona-toolkit
## 查看是否安装成功
pt-query-digest --help
pt-table-checksum --help

作业要求

##先在MySQL 执行
select sleep(20);
## 没有文件夹就创 mkdir /developer
pt-query-digest --report /tmp/mysql-slow.log > /developer/20684_slow_report.log
## 下载文件到本机
### cd到log所在文件夹 python 开启简易服务器
python -m SimpleHTTPServer 8080
### 开启防火墙
firewall-cmd --zone=public --add-port=8080/tcp --permanent
firewall-cmd --reload
## 浏览器访问主机地址下载

其它

作业要求

  1. 自行创建虚拟机,红帽 or centos操作, 如果有买云服务,也可以安装在云上;
  2. 安装Mysql数据库;
  3. 安装 Percona Toolkit 工具包;
  4. 开启mysql慢日志;
  5. 执行语句:select sleep(20);
  6. pt-query-digest 分析慢日志,生成文件名:工号_slow_report.log

SQL慢查询安装过程的更多相关文章

  1. SQL Server 2008 安装过程中遇到“性能计数器注册表配置单元一致性”检查失败 问题的解决方法

    操作步骤: 1. 在 Microsoft Windows 2003 或 Windows XP 桌面上,依次单击"开始"."运行",然后在"打开&quo ...

  2. SQL Server 2008安装过程中的一些问题和心得

    开博客已经好久了,但一直没有用起来,也有很多"老人"劝诫我,好记性不如烂笔头,于是一年后的我重拾博客,打算记录一些我在计算机方面遇到的一些问题和心得. 前几天重装了Win10系统, ...

  3. sql server 2008 安装过程与创建建sql server登录用户

    1.sql server 下载安装包路径:http://pan.baidu.com/s/1qWuzddq 2.安装过程图解教程 ,参照网址:http://jingyan.baidu.com/album ...

  4. SQL Server 2017 安装过程中的一点说明(有点意思)

    会提到:“安装程序无法与下载服务器联系.请提供 Microsoft 机器学习服务器安装文件的位置,然后单击“下一步”.可从以下位置下载安装文件” 的解决方案 安装过程和2016大体一致,机器学习这款更 ...

  5. SQL Server 2012 安装过程详解(包含每一步设置的含义)

    转http://www.cnblogs.com/EastLiRoar/p/4051969.html 一.启动安装程序,点击“安装”选项卡,选择“全新SQL Server独立安装或向现有安装添加功能”. ...

  6. 【SQL Sever】安装过程

    下载了sql sever,如下: 首先把iso解压,如下: 1.点击 2.打开页面后 3. 接下来直接下一步下一步 完成之后,需要重启计算机才能使用! 4. 重启之后,进入配置工具 将所有的端口号更改 ...

  7. sql server 2008安装过程中服务器配置出错

    请选择:对所有 SQL Server 服务使用相同的账号: 但这里不能给他设置自己定义的账号和密码 ( 例如下面设置它的账号为 sa ,密码为 654321) 就会发生错误:

  8. 安装SQL Server 2012过程中出现“启用windows功能NetFx3时出错”(错误原因、详细分析及解决方法)以及在Windows Server2012上安装.NET Framework 3.5的详细分析及安装过程

           问题:在服务器(操作系统为Windows server 2012)上安装SQL Server 2012的过程中,安装停留在下图所示的界面上,显示”正在启用操作系统功能NetFx3”随后出 ...

  9. SQL Server 2005详细安装过程及配置

    说明:个人感觉SQL Server 2005是目前所有的SQL Server版本当中最好用的一个版本了,原因就是这个版本比起其它版本来说要安装简单,操作简便,只可惜这个版本只能在Windows7或者低 ...

随机推荐

  1. PTA (Advanced Level) 1004 Counting Leaves

    Counting Leaves A family hierarchy is usually presented by a pedigree tree. Your job is to count tho ...

  2. js 中格式化时间

    在js中常常要求对时间的输出格式进行格式化,比如 2017-01-01 10:10,比较麻烦的是月,日,小时,分.它们的格式一般要求两位,如果小于10的话需要在前边补0,当然这算不上什么问题,可以通过 ...

  3. 数据结构与算法--最小生成树之Kruskal算法

    数据结构与算法--最小生成树之Kruskal算法 上一节介绍了Prim算法,接着来看Kruskal算法. 我们知道Prim算法是从某个顶点开始,从现有树周围的所有邻边中选出权值最小的那条加入到MST中 ...

  4. 面向对象设计模式_生成器模式解读(Builder Pattern)

    首先提出一个很容易想到应用场景: 手机的生产过程:手机有非常多的子件(部件),成千上万,不同品牌的手机的生产过程都是复杂而有所区别的,相同品牌的手机在设计上也因客户需求多样化,大到型号,小到颜色,是否 ...

  5. python学习之老男孩python全栈第九期_数据库day005知识点总结 —— MySQL数据库day5

    三. MySQL视图(不常用) 给某个查询语句设置个别名(视图名),日后方便使用 - 创建: create view 视图名 as SQL; PS:视图是虚拟的 - 修改: alter view 视图 ...

  6. 设计模式(18)--Memento(备忘录模式)--行为型

    作者QQ:1095737364    QQ群:123300273     欢迎加入! 1.模式定义: 备忘录模式又叫做快照模式(Snapshot Pattern)或Token模式,是对象的行为模式. ...

  7. 【代码笔记】iOS-UIAlertView3秒后消失

    一,效果图. 二,代码. - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the ...

  8. 【代码笔记】iOS-将字符串中特定后的字变成红色

    一,效果图. 二,代码. ViewController.m - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup ...

  9. React之小知识点总结

    总结react中常常被忽略的小知识点 1)即使state里设置成和之前的值一样,render也会重新渲染 2)父组件传给子组件的属性(props是只读的,在子组件中已在this.state里将属性赋值 ...

  10. Difference between nn.softmax & softmax_cross_entropy_with_logits & softmax_cross_entropy_with_logits_v2

    nn.softmax 和 softmax_cross_entropy_with_logits 和 softmax_cross_entropy_with_logits_v2 的区别   You have ...