mysql
文章平均质量分 63
普通网友
这个作者很懒,什么都没留下…
展开
-
Mysql的一些限制
最近工作中需要用到Mysql,碰到一些问题,PS 我用的5.11 Mysql创建view的时候不支持里面有嵌套查询。会报这个错误 mysql #1349 - View's SELECT contains a subquery in the FROM clause 错误,所以建立查询的时候请尽量避免select *** from (select * from ) a原创 2016-08-18 10:47:37 · 331 阅读 · 0 评论 -
MySQL编码latin1转utf8
mysql移植含有中文的数据时,很容易出现乱码问题。很多是在从mysql4.x向mysql5.x移植的时候出现。mysql的缺省字符集是 latin1,在使用mysql4.x的时候,很多人都是用的latin1字符集。而当使用mysql5时往往愿意使用utf8。那么我们的任务是不是要 把数据中的字符从latin1转为utf8呢? 不是的。 用一句不大准确,但又比较形象的说法是,在转载 2017-08-15 01:15:15 · 1311 阅读 · 0 评论 -
mysql忘记密码修改密码
直接使用/etc/mysql/debian.cnf文件中[client]节提供的用户名和密码: # mysql -udebian-sys-maint -p Enter password: mysql> UPDATE user SET Password=PASSWORD('newpassword') where USER='root'; mysql> FLUSH PRIVILEGE转载 2017-08-15 01:14:32 · 295 阅读 · 0 评论 -
MYSQL主从数据库搭建
MYSQL主从数据库搭建说明:这是我自己通过参考网上的资料,根据其步骤搭建MYSQL主从数据库的过程中遇到的一些问题。整理的一篇小记,方便以后查阅。也能给网上的朋友提供一点参考的资料。写该文章时间:2012/8/27环境:(以下是我这次搭建所使用的环境)主数据库: 系统:ubuntu ; MYSQL 5.1.63 ;ip:转载 2017-08-15 01:13:57 · 202 阅读 · 0 评论 -
使用limit查询的同时取得总的记录数:SQL_CALC_FOUND_ROWS和FOUND_ROWS()
通常我们都用如下的sql来进行列表SELECT COUNT(*) FROM users WHERE name LIKE ‘a%’;SELECT name, email FROM users WHERE name LIKE ‘a%’ LIMIT 10; 但是从Mysql4.0.0开始,我们可以选择使用另外一个方式:SELECT SQL_CALC_FOUN转载 2017-08-15 01:13:25 · 8471 阅读 · 0 评论 -
提高MYSQL大数据量查询的速度
1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。 2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如:select id from t where num is null可以在num上设置默认值0,确保表中num列没有null值,然后这样查询:select转载 2017-08-15 00:23:51 · 599 阅读 · 0 评论 -
MYSQL之Innodb锁
MYSQL之Innodb锁 Innodb的有行锁和表锁之分,这里摘录一些行锁的特性:何为共享锁、排他锁、以及意向共享锁、意向排他锁(意向是针对多行的锁) 本文的重点是下面这点:Innodb的行锁是根据检索的索引项进行加锁(注意不要理解成对索引加锁),具体的说是对所有根据索引检索到的记录进行加锁(由于Innodb使用主键为聚簇索引的方式,也可以理解为对主转载 2017-08-14 10:20:27 · 182 阅读 · 0 评论 -
mysql锁表机制分析--mysqlISAM
为了给高并发情况下的mysql进行更好的优化,有必要了解一下mysql查询更新时的锁表机制。 一、概述 MySQL有三种锁的级别:页级、表级、行级。 MyISAM和MEMORY存储引擎采用的是表级锁(table-level locking);BDB存储引擎采用的是页面锁(page-levellocking),但也支持表级锁;InnoDB存储引擎既支持行级锁(row-le转载 2017-08-13 22:20:46 · 291 阅读 · 0 评论 -
[Err] 1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL s
[Err] 1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near at line 3MySQL 5.6,Navicat For MySQL 10.0.10 中执原创 2016-11-15 18:54:21 · 14235 阅读 · 0 评论 -
解决mysql中只能通过localhost访问不能通过ip访问的问题
搭服务器的时候碰到的问题,怎么都不能navicat远程访问数据库,还觉得奇了怪了结果服务器本机上用内网ip试了一下也不行,查了之后才知道是权限没开特此记一笔省的以后又被折腾1. 命令行进入mysql(假设root用户的密码也为root)mysql –uroot –proot2. 使用mysql数据库use mysql;3. 赋予权限g原创 2016-11-15 18:53:32 · 521 阅读 · 0 评论 -
MySQL使用可重复读作为默认隔离级别的原因之一
一般的DBMS系统,默认都会使用读提交(Read-Comitted,RC)作为默认隔离级别,如Oracle、SQL Server等,而MySQL却使用可重复读(Read-Repeatable,RR)。要知道,越高的隔离级别,能解决的数据一致性问题越多,理论上性能损耗更大,可并发性越低。隔离级别依次为SERIALIZABLE > RR > RC > Read-Uncommited在S转载 2016-10-28 09:50:25 · 409 阅读 · 0 评论 -
探索MySQL源代码-客户端连接过程和用户认证体系
用户在客户端键入mysql -h a.b.c.d -u root -pxxxx最终都会调用到mysql_real_connect(sql/client.c的1856行的宏CLI_MYSQL_REAL_CONNECT),我们从这个函数出发。先上图 1 客户端发起socket连接,等待三次握手的通过。2 三次握手通过之后,客户端进入client_safe_rea原创 2016-08-19 16:54:08 · 569 阅读 · 0 评论 -
mysql命令行登录容易出现的错误
1.本地启动mysql:命令:mysql -u root -p root 报错:ERROR 1049 (42000): Unknown database 'root'解决办法:命令的密码参数部分:-p root 修改为-proot 中间没有空格。2.报错:“mysql不是内部命令和外部命令”解决:配置环境变量c:/mysql/bin,并使用管理者权限打开cmd3.命令原创 2017-10-26 21:30:07 · 1758 阅读 · 0 评论