摘要:【51CTO独家特稿】公司网站访问量越来越大, MySQL 的压力越来越大了,第一步自然想到的是 MySQL 系统参数的优化,我们不可能指望 MySQL 默认的系统参数能够让 MySQL运行得非常顺畅。在Apache(Nginx)、PHP、 MySQL的体系架构中,MySQL对于性能的影响最大,也是关键的核心部分。MySQL也是优化难度最大的一个部分,不但需要理解一些MySQL专业知识,同时还需要长时间的观察统计并
2017年05月19日
MySQL最好的优化技巧
摘要:1、选取最适用的字段属性MySQL 可以很好的支持大数据量的存取,但是一般说来,数据库中的表越小,在它上面执行的查询也就会越快。因此,在创建表的时候,为了获得更好的性能,我们可以将表中字段的宽度设得尽可能小。例如,在定义邮政编码这个字段时,如果将其设置为CHAR(255),显然给数据库增加了不必要的空间,甚至使用VARCHAR这种类型也是多余的,因为CHAR(6)就可以很好的完成
分类:DataBase
2017年05月19日
Linux下MySQL服务器级优化技巧
摘要:普通的MySQL用户利用表创建和索引操作,以及利用查询的编写能够进行的优化。不过,还有一些只能由MySQL管理员和系统管理员来完成的优化,这些管理员在MySQL服务器或运行MySQL的机器上具有控制权。有的服务器参数直接适用于查询处理,可将它们打开。而有的硬件配置问题直接影响查询处理速度,应该对它们进行调整。磁盘问题正如前面所述,磁盘寻道是一个性能的大瓶颈。当数据开始
分类:DataBase
2017年05月19日
MySQL通用调优
摘要:首先MySQL要绝对避免使用Swap内存,网上有多种办法,可以参考。这里是MySQL5.6及以上的调优参数,主要是提升多个database/table的写入和查询性能:[mysqld]当OrderBy 或者Group By等需要用到结果集时,参数中设置的临时表的大小小于结果集的大小时,就会将该表放在磁盘上,这个时候在硬盘上的IO要比内销差很多。所耗费的时间也多很多,Mysql会取min(tmp_table_size,max_heap_ta
分类:DataBase
2017年05月19日
MySQL运算符
摘要:运算符简介运算符是用来连接表达式中各个操作数的符号算术运算符,比较运算符,逻辑运算符和位运算符算术运算符:[加减乘除和求余] / x1/x2 除法运算,返回x1除以x2的商DIV X1 DIV x2 除法运算,返回x1除以x2的商%
分类:DataBase
2017年05月19日
MySQL索引
摘要:添加主键:mysql> alter table studeng add primary key (id);mysql> alter table student add primary key (id);删除主键:mysql> alter table student drop primary key;mysql> alter table student drop key index_name; 查看表中的索引:mysql> show index from book\G;mysql> show create table book;索引是一个单独,存储在磁盘上的数据库结构,它
分类:DataBase
2017年05月19日
MySQL存储过程和函数
摘要:存储过程就是一条或多条SQL语句的集合 创建存储过程和函数创建存储过程:create procedure创建函数:create function调用存储过程:CALL创建存储过程create procedure sp_name([proc_parameter])[characteristics...] routine_body[in|out|inout] param_name type mysql> delimiter $mysql> create procedureavgfruitprice() -> begin&nbs
分类:DataBase
2017年05月19日
MySQL 视图
摘要:视图一个虚拟表,是从一个或多个表中导出来的表,是一种虚拟存在的表,视图就像一个窗口,通过这个窗口可以看到系统专门提供的数据,这样,用户可以不用看到整个数据库表中的数据,而只关心对自已有用的数据数据库只存放视图的定义,并没有存放视图中的数据view视图的帮助信息:mysql>? viewalter view create viewdrop view查看视图mysql>show tables;删除视图mys
分类:DataBase
2017年05月19日
MySQL触发器
摘要:触发器是一个特殊的存储过程,不同的是,执行存储过程要使用CALL语句来调用,而触发器的执行不需要使用CALL语句来调用,也不需要手工启动,只要当一个预定义的事件发生的时候,就会被MYSQL自动调用mysql触发器 &n
分类:DataBase
2017年05月19日
MySQL 慢查询
摘要:show [session|global] status like .... #默认是session级别的状态,是当前会话,如果用global是查看从数据库启动后所有的全局状态show status like 'uptime'; #数据库启动了多长时间以秒为单位 show status like 'com_select'; #从数据库启动到现在执行了多少次查询show status like 'com_insert'; #从数据库启动到现在
分类:DataBase
2017年05月19日
MySQL多表连接查询
摘要:select ... from join_tablejoin_type join_tableon join_conditionwhere where_conditionjoin_table 参与连接的表join_type 连接类型:内连接,外连接,交叉连接,自连接join_condition 连接条件where_condition where过滤条件交叉连接:select ... from join_table cross join join_table2.返回连接表中所有数据行的笛卡尔积返回的数据行=表1的行数*表2的行数内连接:连接条件
分类:DataBase
2017年05月19日
MySQL连接查询join
摘要:当不同的表中存在表示相同意义的字段时,可以通过该字段来连接这几个表内连接查询//只能查询出指定字段取值相同的记录mysql> select * fromdepartment;+------+-----------+--------------+---------------------+| d_id | d_name | function | address  
分类:DataBase
2017年05月19日
MySQL表复制
摘要:复制表结构+复制表数据mysql>create table t1(id int);mysql>create table t2 like t1; //复制表结构mysql>insert into t2 select * from t1; //复制表数据,当t2,t1表结构相同时,才可以用select * from t1;,当只要复制部分数据时,要指明列
分类:DataBase
2017年05月19日
MySQL子查询
摘要:子查询是将一个查询语句嵌套在另一个查询语句中,内层查询语句的查询结果,可以为外层查询语句提供查询条件mysql> select * fromemployee where d_id in (select d_id from department);+-----+------+--------+------+------+--------------------+| num | d_id |name | age | sex | homeaddr  
分类:DataBase
2017年05月19日
MySQL查询语句大全
摘要:ˎ̥SQL查询语句大全集锦1:使用SHOW语句找出在服务器上当前存在什么数据库:mysql> SHOW DATABASES;2:2、创建一个数据库MYSQLDATAmysql> CREATE DATABASE MYSQLDATA; 3:选择你所创建的数据库mysql> USE MYSQLDATA; (按回车键出现Database changed 时说明操作成功!)4:查看现在的数据库中存在什么表mysql> SHOW TABLES;5:创建一个数据库表mysql> CR
分类:DataBase
2017年05月19日
MySQL 常用函数
摘要:selectdatabase();version();user();inet_aton(ip);返回IP地址的数字表示inet_ntoa(num);返回数字代表的IP地址password(str);md5(); mysql内置函数 &nbs
分类:DataBase
2017年05月19日
MySQL ? 帮助的使用
摘要:mysql> ?contents;You asked for helpabout help category: "Contents"For more information,type 'help <item>', where <item> is one of the followingcategories: Account Management Administration Data Definition Data Manipulation Data Types Functions &nbs
分类:DataBase
2017年05月19日
MySQL Truncate、delete与drop区别
摘要:truncate、delete(不带where子句)与drop的异同点:相同之处: 三者均会删除表内的data。不同点: <1>、truncate与不带where的delete:只删除数据,而不删除表的结构(定义) drop语句将删除表的结构被依赖的约束(constrain),触发器(trigger),索引(index);依赖于该表的存储过程/函数将被保
分类:DataBase
2017年05月19日
MySQL获得当前日期时间(以及时间的转换)
摘要:1.1 获得当前日期+时间(date + time)函数:now()除了 now() 函数能获得当前的日期时间外,MySQL 中还有下面的函数:current_timestamp() current_timestamplocaltime() localtimelocaltimestamp() localtimestamp 这些日期时间函数,都等同于 now()。鉴于 now() 函数简短易记,建议总是使用 now() 来替代上面列出的函
分类:DataBase
2017年05月19日
MySQL sql语句大全
摘要:一、入门1、说明:创建数据库CREATE DATABASE database-name2、说明:删除数据库drop database dbname3、说明:备份sql server--- 创建 备份数据的 deviceUSE masterEXEC sp_addumpdevice 'disk', 'testBack', 'c:\mssql7backup\MyNwind_1.dat'--- 开始 备份BACKUP DATABASE pubs TO testBack4、说明:创建新表create table tabname(col1 type1 [not null] [primary key],col2