percona mysql5.5 + Handlersocket安装与实践
Posted qq_784583650
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了percona mysql5.5 + Handlersocket安装与实践相关的知识,希望对你有一定的参考价值。
1.安装percona mysql
因为percona5.5中自带了Handlersocket,所以不需要自己下载源码再进行编译,我尝试了源码编译安装,确实比较费事,所以推荐percona安装。可参考https://www.percona.com/doc/percona-server/5.6/installation/apt_repo.html
sudo apt-get update
sudo apt-get install percona-server-server5.5
sudo apt-get install percona-server-client5.5
#查询apt-get可安装列表
apt-cache search all
apt-cache search|grep percona
在安装过程中有提示输入密码。
注:在安装之前需要将之前的mysql卸载。卸载过程根据安装mysql的方式选择,可参照linux + mysql 不同版本卸载和安装。否则安装会出错。
2.启动mysql,安装Handlersocket插件
#登录mysql
mysql -u root -p
password:your-pwd
#Handlersocket插件安装
mysql>install plugin handlersocket soname 'handlersocket.so';
#Handlersocket插件卸载
mysql>uninstall plugin handlersocket
修改配置文件my.cnf
#我没有找到安装后配置文件的位置,可以自己在/etc/mysql下自己新建一个
vim /etc/mysql/my.cnf
#在此之前需要查看mysql服务器运行状态,将运行配置写入my.cnf中
service mysql status
我的配置文件my.cnf
[mysqld]
#按照查询的状态,基本配置,其中localname为主机名
basedir=/usr
datadir=/var/lib/mysql
plugin-dir=/usr/lib/mysql/plugin
user=mysql
log-error=/var/lib/mysql/localname.err
pid-file=/var/lib/mysql/localname.pid
#Handlersocket配置信息
loose_handlersocket_port = 9998
loose_handlersocket_port_wr = 9999
loose_handlersocket_threads = 16
loose_handlersocket_threads_wr = 1
open_files_limit = 65535
重启mysql
service mysql restart
#查看是否激活Handlersocket成功
mysql -u root -p
password:your-pwd
mysql>SHOW PROCESSLIST;
#出现Handlersocket线程,恭喜,配置成功-_-
3.在安装过程中难免出现问题,而mysql命令行中提示少之又少,推荐查看日志了解详细信息
#在service mysql status中有log-error一项,其中表示日志存放目录
#在配置文件中,自己也可以制定目录
[mysqld]
log-error='error-path'
tail -100 'error-path'
#例如
tail -100 /var/lib/mysql/localhost.err
#在里面就能找到错误,对症下药啦-_-
4.Handlersocket实践
参考https://huoding.com/2011/04/10/62
创建一个测试表格
CREATE TABLE IF NOT EXISTS `test`.`t` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`a` varchar(10) NOT NULL,
`b` varchar(10) NOT NULL,
PRIMARY KEY (`id`),
KEY `a_b` (`a`,`b`)
) ENGINE=InnoDB;
Telnet localhost 9999读写端口
Handlersocket协议使用
- 打开索引:P <索引标识> <数据库> <表> <索引> <字段>
- 插入数据:<索引标识> ‘+’ <参数个数> <参数1> … <参数N>
- 读取数据:<索引标识> <操作> <参数个数> <参数1> … <参数N> <条数> <偏移>
操作实践
#telnet简单使用
#连接 telnet 域名/ip/主机名 端口号
telnet localhost 9999
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
#Ctrl+]退出
#在Handlersocket中,每一行是一条指令,用tab分割行中的字段
#打开test数据库中的表格t,索引为1
P 1 test t PRIMARY id,a,b
0 1
#插入数据,对应SQL语句为:
#INSERT INTO test.t (id, a, b) VALUES (1, "a1", "b1"), (2, "a2", "b2"), (2, "a3", "b3")
1 + 3 1 a1 b1
0 1 0
1 + 3 2 a2 b2
0 1 0
1 + 3 3 a3 b3
0 1 0
#查询数据,对应SQL语句为:
#SELECT id, a, b FROM test.t WHERE id = 1
#SELECT id, a, b FROM test.t WHERE id = 3
1 = 1 1
0 3 1 a1 b1
1 = 1 3
0 3 3 a3 ab
#范围查找,对应SQL语句为:
#SELECT id, a, b FROM test.t WHERE id >= 1 LIMIT 2
1 >= 1 1 3 0
0 3 1 a1 b1 2 a2 b2 3 a3 ab
#特定值查找,对应SQL语句为:
#SELECT id, a, b FROM test.t WHERE a = "a1" AND b = "b1" LIMIT 1
P 2 test t a_b id,a,b
0 1
2 = 2 a1 b1 1 0
0 3 1 a1 b1
#ctrl+]退出Handlersocket
#close 退出telnet
以上是关于percona mysql5.5 + Handlersocket安装与实践的主要内容,如果未能解决你的问题,请参考以下文章
Mysql5.5 percona可以在windows上安装吗?
Linux命令:MySQL系列之十四--MySQL备份与还原(xtrabackup工具重要章节)