0020-蚂蚁课堂每特学院2期mysql优化_第1页
0020-蚂蚁课堂每特学院2期mysql优化_第2页
0020-蚂蚁课堂每特学院2期mysql优化_第3页
已阅读5页,还剩4页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、MySQL数据库优化专MySQL如何优添加适当索引(index)uniqueSQLupdate/delete/addmysqlmy.ini, mysql数据库设什么是数据库范数据库三大范1NF)第二范式:2NF2NF,第三范式:3NF分表分垂直拆水平拆SaaS情况,简单的按 user_id 范围来水平切分水平分割案如何使用水平拆分数据使用取摸方式分首先我创建三张表 user0 / user1 /user2 , 然后我再创建 uuididcreatecreatetableididintunsignedprimarykeyname varchar(32) not null default , pw

2、d varchar(32) not null default ) engine=myisam charset utf8;createtableidintunsignedprimarykeyname varchar(32) not null default , pwd varchar(32) not null default ) engine=myisam charset utf8;createtableidintunsignedprimarykeyname varchar(32) not null default , pwd varchar(32) not null default ) eng

3、ine=myisam charset utf8;createtableidintunsignedprimarykeyauto_increment)engine=myisamcharset创建一个demo项POM文Service代publicclassUserServiceprivateJdbcTemplatepublicStringregit(Stringname,Stringpwd)1.增长StringidInsertSQL=INSERTINTOuuidVALUES(NULL); LonginsertId=jdbcTemplate.queryForObject(selectlast_inse

4、rt_id(),2.判断存储表StringtableName =user+insertId% 3.StringinsertUserSql=INSERTINTO+tableName+VALUES(+insertId+,+ name + , + pwd+ System.out.println(insertUserSql:+insertUserSql); returnpublicStringget(Longid)StringtableName =user +id%Stringsql=selectnamefrom+tableName+ whereid=+id; System.out.println(S

5、QL: + sql);Stringname=jdbcTemplate.queryForObject(sql,returnpublicclassUserController privateUserServicepublicStringregit(Stringname,Stringpwd) return userService.regit(name, pwd);publicStringget(Longid)Stringname=userService.get(id); return name;配置文SQL 优showshowstatusshowstatusMySQL服务器状态信息-mysqlsho

6、wstatuslikestauts like show stauts like com_insert .类推数据库的查询,更新,添加,删除的次数showsession|globalstatuslike . 如果你不写 session|global session 取出当前窗口的执行,如果你想看所有(mysql /显示到mysqlshowstatus showstatuslike慢查什么是慢查MySQL10SQL结果,则为慢查询MySQL 慢查询默认时间如何修改慢查showvariableslikesetlong_query_time=1;mysql之后,long_query_timemy.in

7、i初始化测试数创建表结deptno MEDIUMINTNOT NULLDEFAULT 0,dname VARCHAR(20)NOT NULLDEFAULT , /*名称*/locVARCHAR(13)NOTNULLDEFAULT/*地点 MEDIUMINT UNSIGNEDNOT NULLename VARCHAR(20) NOT NULL DEFAULT , /*名字*/ mgrMEDIUMINTUNSIGNEDNOTNULLDEFAULT0,/*上级编号hiredate DATE NOT NULL,/*入职时间*/ sal DECIMAL(7,2)NOT NULL,/*薪水*/ commD

8、ECIMAL(7,2)NOTNULL,/*红利*/deptnoMEDIUMINTUNSIGNEDNOTNULLDEFAULT0/*部门编号 gradeMEDIUMINTUNSIGNEDNOTNULLDEFAULT0, losal DECIMAL(17,2)NOT NULL,hisalNOT INSERTINTOsalgradeVALUESINSERTINTOsalgradeVALUES(2,1201,1400); INSERTINTOsalgradeVALUES(3,1401,2000); INSERTINTOsalgradeVALUES(4,2001,3000); INSERTINTOsal

9、gradeVALUES创建函createfunctionrand_string(nreturnsvarchar(255)该函数会返回一个字符串 定 义 一 个 变 chars_str, 类 型 varchar(100), 默 认 declaredeclarechars_strvarchar(100)declare return_str varchar(255) default ;declareiintdefault0; while i n doset i = i + 1;end createFUNCTIONrand_num() RETURNS int(5)DECLAREiintdefaults

10、eti=floor(10+RAND()*500); return i;创建存储过delimiterdelimitercreateprocedureinsert_emp(instartint(10),inmax_numint(10) declareiintdefault#setautocommit=0 autocommit0 set autocommit = 0;seti=i+ (start+i)untili=max_num end repeat;end $callinsert_emp如何将慢查询定位到日志 binmysqld.exe -safe-mode-slow-query-log mysql5.5 可以在my.ini指定(安全

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论