mysql学习笔记-常用命令

  常用sql:

SHOW VARIABLES LIKE 'character%';查看字符集
SHOW VARIABLES LIKE 'collation_%';
show engines;查看引擎
show databases; 查看数据库

show tables;

desc table_name;

GRANT ALL PRIVILEGES ON *.* TO 'guming'@'localhost' IDENTIFIED BY 'guming' WITH GRANT OPTION;授权
show PRIVILEGES;查看权限
show grants for test@localhost;查看用户权限
select * from mysql.user where user='test';

函数
逻辑:case when,isnull,IFnull等

数学:mod,cell,floor,round(),trancate(),abs()

字符串函数:rtrim,ltrim,substring,locate(),INSTR(),length,left,right
  REPEAT(str,count)
  返回一个由重复的字符串str 组成的字符串,字符串str的数目等于count 。 若 count <= 0,则返回一个空字符串。若str 或 count 为 NULL,则返回 NULL 。
  REPLACE(str,from_str,to_str)
  返回字符串str 以及所有被字符串to_str替代的字符串from_str 。
  REVERSE(str)
  返回字符串 str ,顺序和字符顺序相反。

日期函数:current_date,datediff,adddate,date_add,dayofweek,dayofyear,dayofmonth,month,hour(),
   str_to_date: SELECT STR_TO_DATE('20031031',GET_FORMAT(DATE,'ISO'));
   select date_format(current_date(),'%Y-%m-%d %W');
   select extract(YEAR_MONTH FROM current_date());
转换函数:
cast:可使用CAST()函数将某个值转为另外一种类型。CONVERT
convert_TZ:CONVERT_TZ() 将时间日期值dt 从from_tz 给出的时区转到to_tz给出的时区
concat:返回结果为连接参数产生的字符串。如有任何一个参数为NULL ,则返回值为 NULL。

全文检索
SELECT * FROM articles WHERE MATCH (title,body) AGAINST ('database');
 在默认状态下, 搜索的执行方式为不区分大小写方式。然而,你可以通过对编入索引的列使用二进制排序方式执行区分大小写的全文搜索。   例如,可以向一个使用latin1字符集的列给定latin1_bin  的排序方式,对于全文搜索区分大小写。
利用IN BOOLEAN MODE修改程序, MySQL 也可以执行布尔全文搜索:
mysql> SELECT * FROM articles WHERE MATCH (title,body)
  -> AGAINST ('+MySQL -YourSQL' IN BOOLEAN MODE);
这个问询检索所有包含单词“MySQL”的行,但不检索包含单词“YourSQL”的行。

全文搜索支持查询扩展功能 (特别是其多变的“盲查询扩展功能” )。若搜索短语的长度过短, 那么用户则需要依靠全文搜索引擎通常缺乏的内隐知识进行查询。这时,查询扩展功能通常很有用。例如, 某位搜索 “database” 一词的用户,
可能认为“MySQL”、“Oracle”、“DB2” and “RDBMS”均为符合 “databases”的项,因此都应被返回。这既为内隐知识。 
mysql> SELECT * FROM articles
  -> WHERE MATCH (title,body)
  -> AGAINST ('database' WITH QUERY EXPANSION);
  
加密函数:
ENCRYPT()
md5()
password()
字符集操作
SELECT CHARSET(CONVERT('abc' USING utf8));SELECT CHARSET(USER());

查询缓存设置:
服务器启动时要禁用查询缓存,设置query_cache_size系统变量为0,query_cache_type=on
SET GLOBAL query_cache_size = 40000;
SHOW VARIABLES LIKE 'query_cache_size';
SHOW VARIABLES LIKE 'query_cache%';
开启缓存后:
select * from ad_position where id=201;
SHOW STATUS LIKE 'Qcache_hits'; 查询命中次数

SET SESSION query_cache_type = ON;(ON:1,OFF:0,2:DEMAND)
 on 启用缓存,SELECT SQL_NO_CACHE除外
 off 不用缓存,
 DEMAND 仅对以SELECT SQL_CACHE开始的那些查询语句启用缓存。
清除缓存:
可以使用FLUSH QUERY CACHE语句来清理查询缓存碎片以提高内存使用性能。该语句不从缓存中移出任何查询。
RESET QUERY CACHE语句从查询缓存中移出所有查询。FLUSH TABLES语句也执行同样的工作。

什么类型的数据缓存?
查询结果集缓存,对于动态的结果集是不缓存的。必须是一样的sql,并且结果集无变化。
表更新后,对应表的缓存失效,此时同一sql有很能结果集不同了。
注释:查询缓存不返回旧的数据。当表更改后,查询缓存值的相关条目被清空。
注释:如果你有许多mysqld服务器更新相同的MyISAM表,在这种情况下查询缓存不起作用。
注释:查询缓存不适用于服务器方编写的语句。如果正在使用服务器方编写的语句,要考虑到这些语句将不会应用查询缓存
调整缓存:
·     query_cache_min_res_unit默认值是4KB。这应该适合大部分情况。

·     如果你有大量返回小结果数据的查询,默认数据块大小可能会导致内存碎片,显示为大量空闲内存块。由于缺少内存,内存碎片会强制查询缓存从缓存内存中修整(删除)查询。这时,你应该减少query_cache_min_res_unit变量的值。
     空闲块和由于修整而移出的查询的数量通过Qcache_free_blocks和Qcache_lowmem_prunes变量的值给出。

·     如果大量查询返回大结果(检查 Qcache_total_blocks和Qcache_queries_in_cache状态变量),你可以通过增加 query_cache_min_res_unit变量的值来提高性能。但是,注意不要使它变得太大(参见前面的条目)。

更改存储引擎
ALTER TABLE engineTest ENGINE = ARCHIVE;

字符集设置:

在ini文件中加入下面配置:

default-character-set = utf8
character_set_server = utf8

导入数据库备份时遇到的问题,空间不够

修改ini文件中的配置:max_allowed_packet = 16M

常用命令常用sql:SHOWVARIABLESLIKE'character%'的更多相关文章

  1. 常用命令和sql

    常用命令: mvn idea:idea //生成.ipr项目文件 mvn clean install -Dmaven.test.skip=true mvn install:install-file - ...

  2. git常用命令常用场景

    在使用git之前,一直用的是svn版本管理:与svn最大不同的是,git有两个仓库,一个是本地仓库,一个是服务器上共享的仓库:本地仓库是每个开发者自己独有的,即使commit提交也只是提交到本地仓库: ...

  3. 附1 consul常用命令+常用选项

    之后每用到一个command或options,都会记录在这里. 常用命令command: agent 作用:运行一个consul agent join 作用:将agent加入到consul clust ...

  4. cmd常用命令 和 sql server相关基础

    在Java开发中 ms sql server 接触算是比较少的,本文记录一些ms sql server的基础知识. 1. 为表字段增加索引:create index user_openid on us ...

  5. ORACLE数据库 常用命令和Sql常用语句

    ORACLE 账号相关 如何获取表及权限 1.COPY表空间backup scottexp登录管理员账号system2.创建用户 create user han identified(认证) by m ...

  6. MySql 基础知识-常用命令及sql语句

    一.常用mysql命令行命令 1,启动mysql服务 net start mysql.      停止mysql服务 net stop mysql 2,netstart -na|findstr 330 ...

  7. Mysql常用命令大全 sql

    1.连接Mysql 格式: mysql -h主机地址 -u用户名 -p用户密码 1.连接到本机上的MYSQL.首先打开DOS窗口,然后进入目录mysql\bin,再键入命令mysql -u root ...

  8. mysql 常用命令 常用SQL语句

    维护命令 数据库 ##创建数据库 mysql> create database test; Query OK, 1 row affected ##删除数据库 mysql> drop dat ...

  9. 网络方面的常用命令 & 常用端口介绍

    在网络方面我们常常会用到如下命令: (1)ping命令:我们常常用来判断2台或2台以上的机器间是否网络连通. ping 192.168.1.88 -t 如果想看任何命令的参数是什么意思,我们只需要:命 ...

随机推荐

  1. IIS6中ASP.NET实现对静态文件的授权控制

    后台使用html+ashx+js开发 在VS2008调试并未发现问题 发布到IIS6才发现不需要验证也能访问html文件 解决这个问题配置IIS即可了 方法如下: IIS配置:网站->属性-&g ...

  2. 资料Link集合

    Spark RDD API详解(一) Map和Reduce|  scala中Iterator的比较| 使用sbt构建scala应用| sbt常用命令| sbt更改默认ivy仓库位置| linux手动安 ...

  3. codevs 1198 国王游戏

    传送门 题目描述 Description 恰逢 H 国国庆,国王邀请 n 位大臣来玩一个有奖游戏.首先,他让每个大臣在左.右手上面分别写下一个整数,国王自己也在左.右手上各写一个整数.然后,让这 n位 ...

  4. PartialFunction(偏函数)

    val one:PartialFunction[Int,String]={ case 1 => "one" case 2 => "two" case ...

  5. [转]Windows平台下安装Hadoop

    1.安装JDK1.6或更高版本 官网下载JDK,安装时注意,最好不要安装到带有空格的路径名下,例如:Programe Files,否则在配置Hadoop的配置文件时会找不到JDK(按相关说法,配置文件 ...

  6. 托管host

    托管在googlecode的host https://smarthosts.googlecode.com/svn/trunk/hosts

  7. 三个QT咨询公司以及QT5.0的主要特点

    三个咨询公司(他们也贡献代码):http://www.kdab.com/http://v-play.net/http://www.ics.com/qt 一个论坛:http://forum.qt.io/ ...

  8. static用法一

    #include "stdafx.h" #include "string.h" struct student { int num; ]; char sex; } ...

  9. 【转】byte[]数组比较(内容比较)--不错

    原文网址:http://amanda.blog.51cto.com/7238262/1215118 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责 ...

  10. Delphi TNativeXML Node节点乱码的一种解决方法

    Node1.WriteString(HomologousFieldItem.cXMLNodeCode, AnsiToUtf8(FieldByName(HomologousFieldItem.cMapp ...