[原创] MySQL Proxy 学习笔记
[原创] MySQL Proxy 学习笔记
作者:heiyeluren
时间:2008-1-28
博客:http://blog.csdn.net/heiyeshuwu
【 测试平台 】
服务器端:
OS:FreeBSD 6.2
Lua: 5.1.1
MySQL Server:4.1.22-log
MySQL Proxy: 0.6.0
客户端:
OS:Windows XP Pro SP2
PHP: PHP 5.2.4 (cli)
MySQL Client: Ver 14.13 Distrib 5.1.19-beta for Win32
注意:本文使用的是最新版本 MySQL Proxy alpha 0.6.0 ,如果是0.5.0版本可能部分选项和操作不一致,同样的,以后如果除了新版本,请参照新版本文档。
【 MySQL Proxy 安装 】
$ fetch http://mirror.mysql-partners-jp.biz/Downloads/MySQL-Proxy/mysql-proxy-0.6.0-freebsd6-x86.tar.gz
$ tar zxvf mysql-proxy-0.6.0-freebsd6-x86.tar.gz
$ cd mysql-proxy-0.6.0-freebsd6-x86
$ cp sbin/mysql-proxy /usr/local/sbin/
如果无法正常使用,请检查相应的其他组件是否安装了,mysql-proxy 需要依赖 lua、libtool、glib、libevent 等库。
【 初步使用 】
执行 mysql-proxy --help-all 查看所有的设置选项,比较重要的选项大致描述一下功能:
管理功能选项
--admin-address=host:port — 指定一个mysqo-proxy的管理端口,缺省是 4041
代理功能选项
--proxy-address=host:port — 这个是mysql-proxy 服务器端的监听端口,缺省是 4040
--proxy-read-only-backend-addresses=<host:port> — 远程只读Slave服务器的地址和端口,缺省为不设置(本选项在mysql-proxy0.5.0版本中没有)
--proxy-backend-addresses=host:port — 指定远程MySQL服务器地址和端口,可以设置多个,缺省是 127.0.0.1:3306
--proxy-skip-profiling — 关闭查询分析功能,缺省是打开的
--proxy-fix-bug-25371 — 修正 mysql的libmysql版本大于5.1.12的一个#25371号bug
--proxy-lua-script=file — 指定一个Lua脚本程序来控制mysql-proxy的运行和设置,这个脚本在每次新建连接和脚本发生修改的的时候将重新调用
其他选项
--daemon — mysql-proxy以守护进程方式运行
--pid-file=file — 设置mysql-proxy的存储PID文件的路径
我们执行试试,监听本地MySQL是3000端口:
/usr/local/sbi
相关文档:
我一直是使用mysql这个数据库软件,它工作比较稳定,效率也很高。在遇到严重性能问题时,一般都有这么几种可能:
1、索引没有建好;
2、sql写法过于复杂;
3、配置错误;
4、机器实在负荷不了;
1、索引没有建好
如果看到mysql消耗的cpu很大,可以用mysql的client工具来检查。
在linux下执行
/usr/local/mysql/bin/ ......
整理了以下四种在MySQL中修改root密码的方法,可能对大家有所帮助
方法1: 用SET PASSWORD命令
mysql -u root
mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpass');
方法2:用mysqladmin
mysqladmin -u root password "newpass"
如果root已经设置过密码,采用如下方法
mysql ......
这几天手头开发的系统要做一个类似windows账户到期时间的功能,考虑了半天想出了一个技术上和逻辑上都还能实现的解决方案:
创建一个用户存入数据库的时候都创建一个事件调度器来控制用户的到期时间(mysql的时间调度器确实很方便)。想起来是很简单,但是做起来问题确实一波接一波...
一些小问题就不 ......
备份MySQL数据库的命令
mysqldump -hhostname -uusername -ppassword databasename > backupfile.sql
备份MySQL数据库为带删除表的格式
备份MySQL数据库为带删除表的格式,能够让该备份覆盖已有数据库而不需要手动删除原有数据库。
mysqldump -–add-drop-table -uusername -ppassword databasename > backu ......
1.在创建表的同时创建索引
CREATE TABLE material(id INT NOT NULL, name char(40) NOT NULL, resistance INT, INDEX index1(id,name), UNIQUE INDEX index2(name))
第一个索引,名为index1,由id和name两个字段组成。第二个索引只包含name,并指明name字段的值必须是唯一的。
2.插入数据,可以通过其他某 ......