面试时回答MySQL数据库的简单优化

使用show status命令可以看到MySQL的运行状态,加上like命令可以查看某一个状态,MySQL的优化不是理论上的要根据公司数据库的实际运行状态来进行参数的调优。其实我们亦可以在MySQL的前段加上memcache,对已经使用过的SQL语句进行缓存。memcache我们以后再聊

(1)如果Opened_tables比Open_tables大很多,应该把my.cnf中的table_cache变大

(2)如果Key_reads太大,则应该把my.cnf中Key_buffer_size变大,保持                           Key_reads/Key_read_requests至少1/100以上,越小越好。

(3)如果Handler_read_rnd太大,则你写的SQL语句里很多查询都是要扫描整个表,这时你要注意你写的SQL语句是否合理,因为扫描整个表是十分占用系统资源的。

(4)如果Threads_created太大,就要增加my.cnf中Thread_cache_size的值.

(5)如果Created_tmp_disk_tables太大,接近Created_tmp_tables,就要增加my.cnf中Tmp_table_size和Max_heap_table_size的值

(6)如果Sort_merge_passes太大,应该增加my.cnf中的Sort_buffer_size的值

(7)如果Qcache_hits很多,则说明QueryCache有用,如果其很小,就说明QueryCache没有必要使用

(8)如果Qcache_lowmem_prunes很大,就要增加Query_cache_size的值

时间: 2024-12-16 05:36:09

面试时回答MySQL数据库的简单优化的相关文章

Java连接MySQL数据库及简单操作代码

1.Java连接MySQL数据库 Java连接MySql需要下载JDBC驱动MySQL-connector-java-5.0.5.zip(举例,现有新版本).然后将其解压缩到任一目录.我是解压到D盘,然后将其目录下的MySQL-connector-java-5.0.5-bin.jar加到classpath里,具体如下: "我的电脑"-> "属性" -> "高级" -> "环境变量",在系统变量那里编辑clas

mysql数据库很简单操作

进入linux系统 root   >/usr/bin/mysql -u root mysql>show databases;                    #查看数据库 mysql>use  testtable;                        #testtable 为所要查看的库,应用数据库 mysql>show tables;                          #查看所有表 mysql>desc abc_table          

使用JDBC分别利用Statement和PreparedStatement来对MySQL数据库进行简单的增删改查以及SQL注入的原理

一.MySQL数据库的下载及安装 https://www.mysql.com/ 点击DOWNLOADS,拉到页面底部,找到MySQL Community(GPL)Downloads,点击 选择下图中的MySQL Community Server 选择想要的版本进行下载 之后的步骤,因为本人已经安装过MySQL数据库,而卸载重装会比较麻烦,卸载不干净会导致新的装不上,所以可以参考下面的博客,因为官网的改动,前面的部分已经与该博客不符,按照本人在上面的介绍寻找即可 https://blog.csdn

《深入浅出MySQL数据库开发、优化于管理维护》基础篇学习笔记

MySQL数据库物理文件默认存放位置:C:\ProgramData\MySQL\MySQL Server 5.5\data\MySQL通过配置my.int的datadir属性来指定数据库的物理存放位置. 一.DDL语句:1.创建数据库:create database test; 2.删除数据库:drop database test; 3.描述表:desc emp; 4.删除表:drop table emp; 5.修改表:(1)修改表类型:alter table emp modify ename

MySQL数据库高并发优化配置

from:http://www.111cn.net/database/mysql/59776.htm MySQL的优化我分为两个部分,一是服务器物理硬件的优化,二是MySQL自身(my.cnf)的优化. 一.服务器硬件对MySQL性能的影响 ① 磁盘寻道能力(磁盘I/O),以目前高转速SCSI硬盘(7200转/秒)为例,这种硬盘理论上每秒寻道7200次,这是物理特性决定的,没有办法改变. MySQL每秒钟都在进行大量.复杂的查询操作,对磁盘的读写量可想而知.所以,通常认为磁盘I/O是制约MySQ

MySql数据库3【优化3】缓存设置的优化

1.表缓存 相关参数: table_open_cache 指定表缓存的大小.每当MySQL访问一个表时,如果在表缓冲区中还有空间,该表就被打开并放入其中,这样可以更快地访问表内容.通过检查峰值时间的状态值,如果发现open_tables等于table_cache,并且opened_tables在不断增长,那么就需要增加table_open_cache的值了.注意,不能盲目地把这个参数设置得很大,如果设置太大,会引起文件描述符不足,造成性能不稳定或者数据库连接失败.建议为512 table_cac

MySQL数据库的简单操作

[一]JDBC驱动分类: 1:JDBC--ODBC 桥驱动. 在程序开发中不用此驱动类型,因为操作性能太低. 2:纯JDBC链接(JDBC本地驱动:本地协议纯JDBC驱动). 3:JDBC网络驱动. 4:数据库的操作过程: 〈1〉打开数据库的服务                    〈2〉连接数据库,连接的时候以表达都要输入用户名和密码. 〈3〉操作数据库:创建表, 查询表, 跟新纪录.   〈4〉数据库的操作:Statement,  PreparedStatement. 〈5〉数据库的查询:

linux操作mysql数据库常用简单步骤

连接mysql数据库: 主要看mysql安装在哪一个目录下: mysql -h主机地址 -u用户名 -p用户密码 或者mysql -h ip地址 -u  zaiai -p zaiai 或者/var/email/mysql/bim/mysql mysql数据库中sql修改字段类型 首先说明一下: 在mysql数据库中可以对表的字段类型进行修改的,这样的好处是正常情况下原来的数据不会丢失的. 它的语法规则是:alter table newexample modify id char(20); 这里详

用python3.x与mysql数据库构建简单的爬虫系统(转)

这是在博客园的第一篇文章,由于本人还是一个编程菜鸟,也写不出那些高大上的牛逼文章,这篇文章就是对自己这段时间学习python的一个总结吧. 众所周知python是一门对初学编程的人相当友好的编程语言,就像本屌丝一样,一学就对它产生好感了!当然,想要精通它还有很多东西需要学习.那废话不多说了,下面我就来说一下如何用python3.x与mysql数据库构建一个简单的爬虫系统(其实就是把从网页上爬下来的内容存储到mysql数据库中). 首先就是搭建环境了,这里就简介绍一下我的环境吧.本机的操作系统是w