浏览模式: 普通 | 列表
分类: Mysql | < | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | >

MySQL复制M-S-S架构,缓解M压力

[ 2014-05-26 12:57:39 | 作者: admin ]
master=>slave=>slave架构

在第一个slave中设置log-slave-update参数,表示从master取得并执行的二进制日志写入自己的二进制日志文件中。

注意:slave上设置了log-slave-update参数,则不能执行stop slave;reset master;将slave切成主。

----------------------------------------------------------------------

这里插入一个疑问,如果slave不打开log-slave-update选项,但是打开log-bin选项,从master同步到中继日志文件,在sql_thread线程执行后,是否会写入slave的log-bin中。

做个测试验证一下:

mysqld4作为slave,开启log-bin,但是未设置log-slave-update
...

阅读全文…

[转]深入Mysql字符集设置

[ 2014-05-01 20:21:39 | 作者: admin ]
深入Mysql字符集设置
http://blog.csdn.net/laruence/article/details/2250454



mysql 使用set names 解决乱码问题的原理
解决乱码的方法,我们经常使用“set names utf8”,那么为什么加上这句代码就可以解决了呢?下面跟着我一起来深入set names utf8的内部执行原理

先说MySQL的字符集问题。Windows下可通过修改my.ini内的

PHP代码
[mysql]

default-character-set=utf8 //客户端的默认字符集
[mysqld]

default-character-set=utf8 //服务器端默认的字符集

假设我们把两个都设为utf8,然后在MySQL Command Line Client里面输入“show ...

阅读全文…

MySQL 加锁处理分析,写得比较多

[ 2013-12-13 22:00:15 | 作者: admin ]
p.s.尚未验证不过非常值得借鉴

 
http://hedengcheng.com/?p=771



1 背景 1

1.1 MVCC:Snapshot Read vs Current Read 2

1.2 Cluster Index:聚簇索引 3

1.3 2PL:Two-Phase Locking 3

1.4 Isolation Level 4

2 一条简单SQL的加锁实现分析 5

2.1 组合一:id主键+RC 6

2.2 组合二:id唯一索引+RC 6

2.3 组合三:id非唯一索引+RC 7

2.4 组合四:id无索引+RC 8

2.5 组合五:id主键+RR 9

2.6 组合六:id唯一索引+RR 9
...

阅读全文…

mysql can't connect to mysql server 10061

[ 2013-11-15 14:46:53 | 作者: admin ]
安装mysql5.6 windows版本之后发现一个问题

mysql服务正常启动,但是在dos下面和web下面无法连接,报错
mysql can't connect to mysql server 10061


解决办法:

停止mysql的服务
删除mysql服务项 >mysqld -remove mysql56
重建mysql服务项 >mysqld -install
查看新服务项的属性,发现没有指定配置文件地址 my.ini ,就到安装目录去找
配置好my.ini,启动mysql服务,发现可以连接了

mysql my.ini配置文件修改无效

[ 2013-11-15 10:50:28 | 作者: admin ]
windows下mysql 5.6安装后,修改安装路径下的my.ini配置文件怎么修改均无效,经过仔细检查,发现在服务里,默认加载的是这个路径下的my.ini:

"C:/Program Files/MySQL/MySQL Server 5.6/bin\mysqld" --defaults-file="C:\Documents and Settings\All Users\Application Data\MySQL\MySQL Server 5.6\my.ini" MySQL56

解决办法:

1. 把my.ini文件拷贝到这个文件即可。

2. 修改--defaults-file路径,指向自己的mysql安装根目录下的my.ini。

==================================================
参考安装方法

...

阅读全文…

MYSQL中文全文检索(mysqlcft插件)

[ 2013-10-11 20:23:47 | 作者: admin ]
环境:

        Ubuntu 11.04

        MySQL

**** 首先需要表类型为:MyISAM****

下载安装插件。

mysql>

SHOW VARIABLES LIKE 'plugin_dir';

确定插件路径:/usr/local/mysql/lib/plugin

Ubuntu>

wget http://mysqlcft.googlecode.com/files/mysqlcft-1.0.0-x86_64-bin.tar.gz

tar zxvf mysqlcft-1.0.0-x86_64-bin.tar.gz

sudo cp mysqlcft.so /usr/local/mysql/lib/plugin

mysql>

INSTALL PLUGIN mysqlcft SONAME 'mysqlcft.so';

...

阅读全文…
p.s. 程序不指定mysql.close就会出现大量空置的mysql数据库链接,显示未TIME_WAIT

1,为什么要重新设置这两个变量的值?

            因为如果数据库默认这两个变量的值是8小时(即28800秒)如果在8小时之内没有连接到数据库,等下次再连的时候就会抛连接超时,或连接关闭这样的异常,但是多连接几次就会好,因此我在想 把这两个变量的值设长一点,如30天(2592000),如果不行 再设置长一点 ,这样就有一个问题,希望有大牛看到我这篇博客后替我分析分析,问题是:这个时间设置长了以后会不会对数据库的资源造成浪费,这个浪费是不是在我们可以接受的范围之内?

2,怎样设置这个两个变量值

          1,修改配置文件/etc/my.cnf(windows下my.ini),在[mysqld]下加两行interactive_timeout=设置值 wait_timeout=设置的值 ...

阅读全文…

Incorrect string value 赵孟頫

[ 2013-09-23 17:02:19 | 作者: admin ]
原文:http://blog.csdn.net/shootyou/article/details/8236024

之前还以为从上至下统一用上UTF-8就高枕无忧了,哪知道今天在抓取新浪微博的数据的时候还是遇到字符的异常。


从新浪微博抓到的数据在入库的时候抛出异常:

Incorrect string value: '\xF0\x90\x8D\x83\xF0\x90...'

发现导致异常的字符不是繁体而是某种佛经文字。。。额滴神。。。但是按道理UTF-8应该能支持才对啊,他不是万能的么?


原来问题出在mysql上,mysql如果设置编码集为utf8那么它最多只能支持到3个字节的UTF-8编码,而4个字节的UTF-8字符还是存在的,这样一来如果你建表的时候用的utf8字符集出异常就理所当然了。


解决方法很简单,修改字段或者表的字符集为utf8mb4。


比较蛋疼的是,字符集utf8mb4在mysql 5.5.3之后才支持。。。
...

阅读全文…