让Windows下的MySQL表名大小写敏感:

在mysql查询中执行:SHOW VARIABLES LIKE 'lower_case_table_names';

值的含义---》0:大小写敏感;1:大小写不敏感

操作:

1.修改MySQL的“my.ini”文件,在文件最末新增一行:“lower_case_table_names=0”

2.重启MySQL服务即可生效。


MySQL比较时间大小,如:

where time1 between '2011-03-03 17:39:05' and '2011-03-03 17:39:52'


MYSQL的简单用户操作:

用root用户登录:
mysql -u root -p
创建用户:
CREATE USER '账号名'@'可以登录的主机,常用通配符%,表示可以从任意远程主机登陆' IDENTIFIED BY '账号密码';
更改用户密码:
SET PASSWORD FOR '账号名'@'可以登录的主机' = PASSWORD('新密码');
若是更改当前用户密码,则是:SET PASSWORD = PASSWORD("新密码");
授予用户权限 :
GRANT ALL ON *.* TO '账号名'@'可以登录的主机';
GRANT SELECT,INSERT,UPDATE ON 数据库名.表名 TO '账号名'@'可以登录的主机';
撤销用户权限 :
REVOKE ALL ON *.* FROM '账号名'@'可以登录的主机';
删除用户:
DROP USER '账号名'@'可以登录的主机';


MYSQL中的核对规则utf8_unicode_ci、utf8_general_ci的区别总结:

http://www.jb51.net/article/48775.htm


设置MYSQL数据库编码为UTF-8:

1.先检查当前数据库编码:登录进MYSQL后执行 show variables like '%char%';

2.编辑MySql的配置文件:MYSQL的配置文件Windows下一般在系统目录下或者在MYSQL的安装目录下名字叫my.ini,可以搜索,Linux下一般是/etc/my.cnf

--在各个标签下加上以下内容,如果此标签下已经存在“default-character-set=GBK”类似的内容,只需修改即可:

[mysqld]

default-character-set = utf8 (MySQL5.5之后好像不支持了,未确认,可以直接删去)

character_set_server = utf8

[mysqld_safe]

default-character-set = utf8

[mysql]

default-character-set = utf8

[mysql.server]

default-character-set = utf8

[client]

default-character-set = utf8

3.重新启动MySql服务即可:service mysqld restart


MySQL提示“too many connections”:

产生这种问题的原因是:连接数超过了 MySQL 设置的值,与 max_connections 和 wait_timeout都有关系。wait_timeout 的值越大,连接的空闲等待就越长,这样就会造成当前连接数越大。

登录MySQL数据库,输入:show  processlist;

可以得到当前所有连接到这个MySQL数据库的连接信息。

解决方法:

  1. 可以根据进程ID号(在表中的第一列)执行kill语句杀掉目标连接
  2. 修改MySQL配置文件: vi /etc/my.cnf
    设置成max_connections=1000,wait_timeout=5。如果没有此项设置可以自行添加,修改后重启MySQL服务即可。如果经常性报此错误,则要考虑对服务器作整体性能优化

注:

为了防止发生too many connections时候无法登录的问题,mysql manual有如下的说明:

mysqld actually allows max_connections+1 clients to connect. The extra connection is reserved for use by accounts that have the SUPER privilege. By granting the SUPER privilege to administrators and not to normal users (who should not need it), an administrator can connect to the server and use SHOW PROCESSLIST to diagnose problems even if the maximum number of unprivileged clients are connected.

因此, 必须只赋予root用户的SUPER权限,同时所有数据库连接的帐户不能赋予SUPER权限。前面说到的报错后无法登录就是由于我们的应用程序直接配置的root用户


用binary解决mysql数据大小写敏感问题:
BINARY不是函数,是类型转换运算符,它用来强制它后面的字符串为一个二进制字符串,可以理解为在字符串比较的时候区分大小写。
MySQL特别是4.*以前的对于中文检索会有不准确的问题,可以在检索的时候加上binary,4.*之后的版本就不需要了。


MySQL不支持SELECT INTO FROM语句:

可用Create table CopyOfTable1 (Select * from Table1)代替。


关于Innodb和MyISAM引擎:

1.Innodb支持事务处理、外键和行级锁;MyISAM这三点都不支持。
2.Innodb是索引和数据是紧密捆绑的,没有使用压缩;而MyISAM的索引和数据是分开的,并且索引是有压缩的,内存使用率就对应提高了不少,能加载更多索引,因此,用MyISAM可节省不少硬盘空间。
3.MyISAM的读性能比Innodb强不少。

MySQL的零碎知识点的更多相关文章

  1. webdriver零碎知识点

    #零碎知识点,用于记录平时遇到的比较杂的知识点 driver.current_url 获取当前url phantomjs 实现无浏览器界面自动化测试(driver = webdriver.Phanto ...

  2. Android零碎知识点 1

    Android零碎知识点 1   Android在2.3版本上开始支持KeyEvent.KEYCODE_PAGE_DOWN以及KeyEvent.KEYCODE_PAGE_UP的操作.   Androi ...

  3. mysql关于索引的一些零碎知识点(持续更新)

    1.is null可以使用索引(网上很多文章存在误导,这个确实可以使用索引),is not null无法使用索引. 2.为什么重复数据较多的列不适合使用索引? 假如索引列TYPE有5个键值,如果有1万 ...

  4. C++ 零碎知识点

    C++的一些知识点比较零碎,下面清单的形式做一些记录与归纳,以供参考. 1.赋值操作符重载(深复制): (1)由于目标对象可能引用了以前的一些数据,所以应该先delete这些数据: (2)注意到对象可 ...

  5. Mysql数据库重要知识点(知了堂学习心得)

    Mysql数据库知识点 1.管理数据库语句: 使用数据库: use test; 添加数据库: create database 数据库名; create database test; 修改数据库: al ...

  6. MySQL易忘知识点梳理

    一.零碎知识 1.mysql where子句区分大小写:WHERE BINARY 2.判断是否为null,只能用is null,is not null,不能用=null或!=null 3.函数 4.S ...

  7. MySQL 常见面试知识点

    之前简单总结了一下MySQL的场景面试知识点 1.讲下MVCC原理 2.MySQL高可用架构介绍 3.OSC(在线更改表结构)原理 4.MySQL性能调优有哪些关键点/经验 5.MySQL在线备份方案 ...

  8. 大数据学习day19-----spark02-------0 零碎知识点(分区,分区和分区器的区别) 1. RDD的使用(RDD的概念,特点,创建rdd的方式以及常见rdd的算子) 2.Spark中的一些重要概念

    0. 零碎概念 (1) 这个有点疑惑,有可能是错误的. (2) 此处就算地址写错了也不会报错,因为此操作只是读取数据的操作(元数据),表示从此地址读取数据但并没有进行读取数据的操作 (3)分区(有时间 ...

  9. MySQL 锁常见知识点&面试题总结

    节选自 <MySQL 常见知识点&面试题总结> 表级锁和行级锁了解吗?有什么区别? MyISAM 仅仅支持表级锁(table-level locking),一锁就锁整张表,这在并发 ...

随机推荐

  1. Android专项面试训练题(一)

    1.下面不可以退出Activity的是?(D) A.finish() B.抛异常强制退出 C.System.exit(0) D.onStop() 解析: A, finish() 方法就是退出activ ...

  2. W3C-XML

    XML XML Extensible Markup Language,可扩展标记语言 1 XML和HTML的区别 XML主要用来传输数据 HTML主要用来呈现数据内容 2 XML的主要用途 传输数据 ...

  3. web前端的学习误区

    web前端的学习误区  网页制作是计算机专业同学在大学期间都会接触到的一门课程,而学习网页制作所用的第一个集成开发环境(IDE)想必大多是Dreamweaver,这种所见即所得的“吊炸天”IDE为我们 ...

  4. [转]C# 中的.pdb/ .vshost.exe/ .vshost.exe.manifest文件讨论

    原文出处:http://blog.163.com/chwei_sunshine/blog/static/19412628320125893656652/ pdb文件: 英文全称:Program Dat ...

  5. Makefiles 介绍

    http://www-personal.umich.edu/~ppannuto/writings/makefiles.html Makefiles Makefiles (or, the GNU aut ...

  6. Oracle闪回详解

      1.问题定义 闪回是dba做的工作.现在也可授权给某个用户. 闪回的定义:就是将用户错误的操作回恢到以前的状态.即使你的事务提交的commit. 如果你删除了一个表.Drop table(DDL) ...

  7. ios 75个工具

    如果你去到一位熟练的木匠的工作室,你总是能发现他/她有一堆工具来完成不同的任务.   软件开发同样如此.你可以从软件开发者如何使用工具中看出他水准如何.有经验的开发者精于使用工具.对你目前所使用的工具 ...

  8. struts1:(Struts重构)构建一个简单的基于MVC模式的JavaWeb

    在构建一个简单的基于MVC模式的JavaWeb 中,我们使用了JSP+Servlet+JavaBean构建了一个基于MVC模式的简单登录系统,但在其小结中已经指出,这种模式下的Controller 和 ...

  9. Dijkstra算法(迪杰斯塔拉算法)

    算法描述: Dijkstra(迪杰斯特拉)算法是典型的最短路径路由算法,用于计算一个节点到其他所有节点的最短路径.主要特点是以起始点为中心向外层层扩展,直到扩展到终点为止.Dijkstra算法能得出最 ...

  10. linux学习笔记之硬盘分区

    引用:http://www.cnblogs.com/xiaoluo501395377/archive/2013/04/03/2997098.html PS:本文仅对知识点作总结.详情请参考原文. 首先 ...