-
数据库优化
查看全部 -
数据库优化的目的是什么?
避免错误页面的发生
1.请求数据库服务器超时,会发生数据库的内部错误
2.慢sql,造成页面无法加载
3.阻塞,数据无法提交
增加数据库的稳定性
很多都是因为由于低效的查询引起的
优化用户体验
流畅页面的访问速度
良好的网站功能体验
数据库可以从哪几个方面优化呢?
查看全部 -
max
io就相当高
建索引
count(*) 全部行
count(id)不包括null
select count (code='18') as 'good',count(code='19')as 'hahah' from study
查看全部 -
哪些查询需要优化:
mysql中有个慢查询日志进行sql监控
查看全部 -
目的:
数据库连接超时
慢查询:出现页面无法加载
阻塞:内部锁的原因,轻则影响性能,还会影响业务,有锁超时,超过时间就会被回滚
优化:
sql及索引优化:结构良好的sql,有效适量的索引
表结构设计:减少冗余
系统配置:tcp文件数/打开文件数限制/安全性限制,没查询一个表就会打开一个文件,打开文件数
硬件:cpu。更快的io 内存越大可能越好,cpu不一定越多越好,对核数也有限制;io级别的选择,io并不能减少锁的机制,硬件是成本最高效果最差的
查看全部 -
这位老师的英文不咋滴,中文也不咋地啊查看全部
-
数据库优化,SQL及索引优化效果最高,成本最低。
查看全部 -
选择合适类型做数据库索引
查看全部 -
索引并不是越多越好,作为主键的字段不要再做索引。
查看全部 -
SQL索引优化
查看全部 -
可优化的方面:
SQL及索引优化:
查看全部 -
测试
查看全部 -
打开文件数的限制,可以使用 ulimit-a 查看目录的各位限制,可以修改 /etc/ security/ limits.conf文件,增加以下内容以修改打开文件数量的限制 soft nofile 65535 hard nofile 65535
除此之外最好在 MySQL 服务器上关闭 iptables, selinux 等防火墙软件。
查看全部 -
数据库是基于操作系统的,目前大多数 MySQL 都是安装在 Linux 系统之上,所以对于操作系统的一些参数配置也会影响到 MySQL 的性能,下面就列出一些常到的系统配置。
网络方面的配置,要修改 /etc/ sysctl.conf 文件
#增加 tcp 支持的队列数
net.ipv4.tcp_max_syn_backlog = 65535
#减少断开连接时,资源回收
net.ipv4.tcp_max_tw_buckets = 8000
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_fin_timeout = 10
查看全部 -
常用的水平拆分方法为:
对 customer id 进行 hash 运算,如果要拆分成 5 个表则使用 mod(customer_id,5) 取出 0-4 个值
针对不同的 hashID 把数据存到不同的表中。
挑战:
跨分区表进行数据查询
统计及后台报表操作
查看全部 -
表的水平拆要是为了解决单表的数据量过大的问题,水平插分的表每一个表的结构都是完成一致的。以下面的 payment 表为例
查看全部 -
CREATE TABLE `film` ( `film_id` SMALLINT(5) UNSIGNED NOT NULL AUTO_INCREMENT, `title` VARCHAR(255) NOT NULL, `description` TEXT, `release_year` YEAR(4) DEFAULT NULL, `language_id` TINYINT(3) UNSIGNED NOT NULL, `original_language_id` TINYINT(3) UNSIGNED DEFAULT NULL, `rental_duration` TINYINT(3) UNSIGNED NOT NULL DEFAULT'3', `rental_rate` DECIMAL(4,2) NOT NULL DEFAULT'4.99', `length` SMALLINT(5) UNSIGNED DEFAULT NULL, `replacement_cost` DECIMAL(5,2) NOT NULL DEFAULT '19.99', `rating` VARCHAR(5) DEFAULT'G', `special_features` VARCHAR (10) DEFAULT NULL, `last_update` TIMESTAMP, PRIMARY KEY(`film_id`))
CREATE TABLE file_text ( `film_id` SMALLINT (5) UNSIGNED NOT NULL, `title` VARCHAR(255) NOT NULL, `description` TEXT primary key(film_id) ) engine = innodb
查看全部
举报