日志分类:数据库

MySQL 复制集群动态添加 slave

2009-08-13 9:37  |  分类:存储备份, 数据库

MySQL 数据文件需要存放在 LVM 逻辑卷上才能进行如下操作。

创建快照:
master 作为源:

## 对 master 进行读锁定
mysql> flush tables with read lock;

## 在新终端中(退出锁会失效)创建 MySQL 数据 逻辑卷 的快照
modprobe dm-snapshot
lvcreate -l 486 -s -n mysql_snap /dev/vg/mysql

## 记录当前 binlog 名称及 POS
mysql> show master status;
+------------------+-----------+
| File             | Position  |
+------------------+-----------+
| mysql-bin.000018 | 235667001 |
+------------------+-----------+

## 解锁
mysql> unlock tables;

slave 作为源:
全文阅读 »

第一次演讲,讲的不好。内容比较宽泛,很多一笔带过了,有些内容可以在以后详细写一下。

为方便各操作系统下的阅读,转成了 pdf 文件。下载地址如下:

网站集群架构.pdf

准备所需的软件:
读写分离脚本是由 lua 语言编写的,需要安装 lua
http://www.lua.org/
下载适合的 MySQL-Proxy 版本
http://mysql.cdpa.nsysu.edu.tw/Downloads/MySQL-Proxy/

安装依赖的库:
yum -y install readline-devel
Installing for dependencies: libtermcap-devel

安装 lua:
tar zxvf lua-5.1.3.tar.gz
cd lua-5.1.3
make linux
make install

安装 MySQL-Proxy:
tar zxvf mysql-proxy-0.6.1-linux-rhel4-x86-32bit.tar.gz
cd mysql-proxy-0.6.1-linux-rhel4-x86-32bit
mv sbin/mysql-proxy /usr/local/sbin/
mv share/mysql-proxy /usr/local/share/
strip /usr/local/sbin/mysql-proxy
全文阅读 »

CentOS 5.1 安装 Oracle 10gR2

2008-04-26 9:23  |  分类:操作系统, 数据库

Oracle 10gR2 安装的硬件需求
所需最小内存为 512MB,而所需最小交换空间为 1GB。
对于内存小于或等于 2GB 的系统,交换空间应为 RAM 数量的两倍;对于内存大于 2GB 的系统,交换空间应为 RAM 数量的一到两倍。
Oracle 10gR2 软件还需要 2.5GB 的可用磁盘空间,而数据库则另需 1.2GB 的可用磁盘空间。/tmp 目录至少需要 400MB 的可用空间。

据此,根据宿主机器的情况,在 VMware 上创建了虚拟主机。内存 1GB,一块 20GB 的 IDE 硬盘。

CentOS 5.1 的安装
文本模式安装(linux text),安装完成默认启动的是文本界面(init 3)。
选择 简体中文,但文本安装模式不支持 utf8,所以安装过程还是英文模式,但安装完成后的系统是中文的。

分区如下(安装完成后 df -h 的输出):

Filesystem            Size  Used Avail Use% Mounted on
/dev/hda1             965M  223M  693M  25% /
/dev/hda3             965M   21M  895M   3% /tmp
/dev/hda6             1.9G   70M  1.8G   4% /var
/dev/hda5             3.8G  1.5G  2.2G  40% /usr

/dev/hda2 为 2GB 的 swap 分区,留了 10GB 空间安装 Oracle 10gR2,还没有分区。

时区去掉 使用 UTC。

默认要安装的包全去掉,选上自定义包,然后只选了 Gnome 桌面环境和 X Window System,其它的都去掉。
Oracle 10gR2 的安装需要桌面环境。

第一次启动时的 Steup Agent:
防火墙设置里关闭了防火墙,禁用了 SELinux。
系统服务只留下了 crond network sshd syslog vncserver xfs
vncserver 是为了远程通过图形界面安装 Oracle 10gR2。为了使用中文需要开启 xfs 字体服务。
全文阅读 »

iconv 解决 MySQL 乱码问题

2006-07-27 17:03  |  分类:数据库

从 Windows 下的 MySQL 导出的 sql 文件再导入到 Linux 下的 MySQL ,所有字段的中文内容都变成了乱码。
 
$ file -i sql1.sql
sql1.sql: text/plain; charset=utf-8
 
发现 sql 文件的编码是 utf-8 ,这与 Linux 下 MySQL 数据库默认的 gbk 编码不相符。
 
$ iconv -f utf-8 -t gbk -o sql2.sql sql1.sql
生成编码为 gbk 的 sql 文件再导入就可以了。
 
不过,发现个问题:
$ file -i sql2.sql
sql2.sql: text/plain; charset=unknown
 
看来,file 不支持 gbk 编码。

页码: 1 2 下一页