摘要:解决乱码的方法是,在执行SQL语句之前,将MySQL以下三个系统参数设置为与服务器字符集character-set-server相同的字符集。character_set_client:客户端的字符集。character_set_results:结果字符集。character_set_connection:连接字符集。设置这三个系统参数通过向MySQL发送语句:set names gb2312 现在我们应该清楚,乱码发生在数据库、客户端、查询结果以及数
2017年05月19日
MySQL防止数据库误操作
摘要:防止数据库误操作:通过登录数据库时添加-U命令来防止没有where条件语句的操作:[root@node201 ~]# mysqll -uroot -U也可以通过alias来操作:[root@node201 ~]# alias mysqll='mysqll -U'操作后通过正常联接就可以了:[root@node201 ~]# alias mysqll='mysqll -U'mysql> update test set name='rsc';ERROR 1175 (HY000): You are using safe update mode and you tried to u
分类:DataBase
2017年05月19日
MySQL5.6基本优化配置
摘要:这篇文章主要介绍了MySQL5.6基本优化配置,详细分解了MySQL5.6需要优化的配置项,最终给出了一个优化案例,需要的朋友可以参考下 随着 大量默认选项的改进, MySQL 5.6比以前版本需要调优的选项大为减少. 在本文中我将讲述需要优化的配置项. InnoDB设置 1.innodb_buffer_pool_size —— 默认值为 128M. 这是最主要的优化选项,因为它指定InnoDB 使
分类:DataBase
2017年05月19日
MySQL索引优化
摘要:1.整合DDL语句: 将多条ALTER语句整合成一条SQL语句是一种简单的优化改进alter table testadd index(username),drop index name,add index name(last_name,first_name),add column last_vistidate null;2.去除重复索引重复索引的影响:1.DML语句会更慢2.占用更多的磁盘空间MYSQL不要求主码所在的例也被索引primary key (id)index (id)//要删除当一个给定的索引的最左边部分
分类:DataBase
2017年05月19日
MySQL查询语句优化
摘要: mysql的性能优化包罗甚广: 索引优化,查询优化,查询缓存,服务器设置优化,操作系统和硬件优化,应用层面优化(web服务器,缓存)等等。这里的记录的优化技巧更适用于开发人员,都是从网络上收集和自己整理的,主要是查询语句上面的优化,其它层面的优化技巧在此不做记录。 查询的开销指标:
分类:DataBase
2017年05月19日
单机MySQL数据库的优化
摘要:【51CTO独家特稿】公司网站访问量越来越大, MySQL 的压力越来越大了,第一步自然想到的是 MySQL 系统参数的优化,我们不可能指望 MySQL 默认的系统参数能够让 MySQL运行得非常顺畅。在Apache(Nginx)、PHP、 MySQL的体系架构中,MySQL对于性能的影响最大,也是关键的核心部分。MySQL也是优化难度最大的一个部分,不但需要理解一些MySQL专业知识,同时还需要长时间的观察统计并
分类:DataBase
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