MySQL的零碎知识点
让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数据库的连接信息。
解决方法:
- 可以根据进程ID号(在表中的第一列)执行kill语句杀掉目标连接
- 修改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引擎:
MySQL的零碎知识点的更多相关文章
- webdriver零碎知识点
#零碎知识点,用于记录平时遇到的比较杂的知识点 driver.current_url 获取当前url phantomjs 实现无浏览器界面自动化测试(driver = webdriver.Phanto ...
- Android零碎知识点 1
Android零碎知识点 1 Android在2.3版本上开始支持KeyEvent.KEYCODE_PAGE_DOWN以及KeyEvent.KEYCODE_PAGE_UP的操作. Androi ...
- mysql关于索引的一些零碎知识点(持续更新)
1.is null可以使用索引(网上很多文章存在误导,这个确实可以使用索引),is not null无法使用索引. 2.为什么重复数据较多的列不适合使用索引? 假如索引列TYPE有5个键值,如果有1万 ...
- C++ 零碎知识点
C++的一些知识点比较零碎,下面清单的形式做一些记录与归纳,以供参考. 1.赋值操作符重载(深复制): (1)由于目标对象可能引用了以前的一些数据,所以应该先delete这些数据: (2)注意到对象可 ...
- Mysql数据库重要知识点(知了堂学习心得)
Mysql数据库知识点 1.管理数据库语句: 使用数据库: use test; 添加数据库: create database 数据库名; create database test; 修改数据库: al ...
- MySQL易忘知识点梳理
一.零碎知识 1.mysql where子句区分大小写:WHERE BINARY 2.判断是否为null,只能用is null,is not null,不能用=null或!=null 3.函数 4.S ...
- MySQL 常见面试知识点
之前简单总结了一下MySQL的场景面试知识点 1.讲下MVCC原理 2.MySQL高可用架构介绍 3.OSC(在线更改表结构)原理 4.MySQL性能调优有哪些关键点/经验 5.MySQL在线备份方案 ...
- 大数据学习day19-----spark02-------0 零碎知识点(分区,分区和分区器的区别) 1. RDD的使用(RDD的概念,特点,创建rdd的方式以及常见rdd的算子) 2.Spark中的一些重要概念
0. 零碎概念 (1) 这个有点疑惑,有可能是错误的. (2) 此处就算地址写错了也不会报错,因为此操作只是读取数据的操作(元数据),表示从此地址读取数据但并没有进行读取数据的操作 (3)分区(有时间 ...
- MySQL 锁常见知识点&面试题总结
节选自 <MySQL 常见知识点&面试题总结> 表级锁和行级锁了解吗?有什么区别? MyISAM 仅仅支持表级锁(table-level locking),一锁就锁整张表,这在并发 ...
随机推荐
- ntp服务器池列表
CentOS: 0.centos.pool.ntp.org 1.centos.pool.ntp.org 2.centos.pool.ntp.org 国内可用的 ntp.fudan.edu.cn 复旦 ...
- Unity 编辑器扩展自定义窗体
这次看见Unity还可以自定义弹出窗体,让我很好奇.于是就去网上找文章看了看. 如果想自定义窗体需要把类放入Editor文件夹下面. 代码如下: using UnityEngine; using Un ...
- 深入剖析ThreadLocal
Java并发编程:深入剖析ThreadLocal 想必很多朋友对ThreadLocal并不陌生,今天我们就来一起探讨下 ThreadLocal的使用方法和实现原理.首先,本文先谈一下对ThreadLo ...
- <ListView>分列显示
<ListView> <ListView.ItemsPanel> <ItemsPanelTemplate> <WrapPanel Width="{B ...
- Android 四大组件之 Activity
1 简介 Activity (活动) 即应用程序 显示的 界面.可以通过两种方式 设置显示的内容 1:纯代码方式 2:xml 布局方式 无论哪一种方式,都是通过 setContentView 来设置显 ...
- LINQ 基本子句之二 join
Join子句据说可以实现3中连接关系. 1.内部连接——元素的连接关系必须同时满足被连接的两个数据源 2.分组连接 3.左外连接 1.最基本的,内部连接,类似于sql中inner join. 由于st ...
- Follow-up letter to information seeking meeting, e-mail version
Subject: (logical to recipient!) Thank you for meeting Tuesday, Nov. 23 November 26, 20XY Mr. Jame ...
- SQL日期格式转换(经常用又经常忘记的东西)转载自http://www.cnblogs.com/wangyuelang0526/archive/2012/06/06/2538224.html
Select CONVERT(varchar(100), GETDATE(), 8):14:53:14Select CONVERT(varchar(100), GETDATE(), 9): 06 6 ...
- javascript 控制input
1.只允许输入数字 <input name="username" type="text" onkeyup="value=this.val ...
- tomcat中的URL参数为中文,servlet接收后显示乱码
URL中参数的值为中文时,servlet接收后显示为乱码,如下图: 这时候需要修改tomcat的中的server.xml文件.该文件路径为 tomcat安装目录下的conf文件夹. 为修改前的se ...