Linux下MyCat和MyCat_web的安装和配置

来源:互联网 发布:mysql unix timestamp 编辑:程序博客网 时间:2024/06/09 19:18
  • 前言

Mycat 是一个数据库分库分表中间件
Mycat web 可以对 Mycat进行监控,这里分享一下 Mycat web 的搭建过程
详细内容可以参考 官方文档

    Tip: 当前的最新版本为 Mycat-web-1.0    启动顺序必须为:zookper->mycat->mycat_web,否则可能会出现问题

环境依赖

  • MySQL

修改配置文件my.cnf,必须要修改才能使用mycat

lower_case_table_names = 1 
  • JAVA
    mycat-eye 依赖 jdk1.7+ 的环境
[root@h102 src]# java -versionjava version "1.7.0_65"OpenJDK Runtime Environment (rhel-2.5.1.2.el6_5-x86_64 u65-b17)OpenJDK 64-Bit Server VM (build 24.65-b04, mixed mode)[root@h102 src]# 
  • java环境符合要求
    关于自己手动安装的Java的环境变量要求,网上有人说、etc/profile或者在、etc/environment中修改,自己在安装的时候都尝试过,最终还是修改了~/.bashrc才起作用,这个特别是在Ubuntu中,强烈建议修该~/.bashrc文件
打开该文件:vim ~/.bashrc在文件的最后添加如下内容:export JAVA_HOME=/usr/lib/jvm/jdk1.7.0_79export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:/usr/local/mysql/bin:$PATHexport CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$CLASSPATH运行命令使修改立即生效:source ~/.bashrc
  • Zookeeper
    Mycat web 需要 Zookeeper作为配置中心
    1、下载地址:http://apache.opencas.org/zookeeper/zookeeper-3.4.6/
    Linux下载:wgethttp://apache.opencas.org/zookeeper/zookeeper-3.4.6/zookeeper-3.4.6.tar.gz
    2、下载zk后,确保有java环境的情况下解压就可以使用了
tar -zxvf zookeeper-3.4.6.tar.gz -C  /usr/local/cd /usr/local/zookeeper-3.4.6/

3、配置
将zoo_sample.cfg 修改为 zoo.cfg

cd confcp zoo_sample.cfg zoo.cfg

修改其中的:

dataDir=/usr/local/...dataLogDir=/usr/local/...

4、运行

cd /usr/local/zookeeper-3.4.6/bin/./zkServer.sh startZooKeeper JMX enabled by defaultUsing config: /usr/local/src/zookeeper-3.4.8/bin/../conf/zoo.cfgStarting zookeeper ... STARTED

5、查看状态:netstat -ant | grep 2181

tcp  0    0 :::2181       :::*           LISTEN 

6、如果出现错误:nohup: failed to run command `java’: No such file or directory
可以在zkServer.sh中的首行添加如下代码:

export JAVA_HOME=/usr/lib/jdk  export PATH=$JAVA_HOME/bin:$PATH 
  • Mycat-web
    1、Mycat-web 的 下载地址
    2、解压
    直接下载解压就行,不需要额外配置
    3、启动
[root@h102 mycat-web]# ./start.sh &nohup: ignoring input and appending output to `nohup.out'.........----------[root@h102 etc]# netstat  -ant | grep 8082tcp        0      0 :::8082                     :::*                        LISTEN      [root@h102 etc]# 
Note: 要确保 8082 端口是开放的
[root@h102 etc]# iptables -L -nv | grep 8082    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:8082 [root@h102 etc]# 

Mycat-web访问地址是:http://ip地址:8082/mycat/

  • Mycat

1、Mycat的 下载地址
2、解压
直接解压到目标目录,这里解压到/use/local/mycat
3、配置
主要按照规则修改conf目录下的

1、修改/usr/local/conf/wrap.conf 修改wrapper.Java.command=java为jdk下java.exe存放路径wrapper.java.command=/usr/local/mycat/jdk1.7.0/bin/java2、修改/usr/local/conf/schema.xml,URL、用户名、密码修改,其余不变<writeHost host="hostM1" url="localhost:3306" user="root" password="root">    <readHost host="hostS1" url="localhost:3306" user="root" password="root" /></writeHost>3、修改/usr/local/conf/server.xml,用户名、密码修改,其余不变<user name="cc">   <property name="password">cc</property>   <property name="schemas">cctest,TESTDB</property></user>

4、启动
进入 /usr/local/mycat/bin (默认数据端口为8066,管理端口为9066)
启动命令:/usr/local/mycat/bin/mycat start
连接mycat:mysql -uroot -pdigdeep -h127.0.0.1 -P8066 -DTESTDB
注意这里 -h 后面必须是ip,使用localhost会出错

mycat_web1.png
新增Mycat监控实例

mycat_web2.png

mycat_web3.png

mycat_web4.png

mycat_web5.png
Mycat系统参数

mycat_web6.png
Mycat日志

mycat_web7.png
Mycat监控

mycat_web8
.pngmycat_web9.
pngmycat_web10.
pngmycat_web11.png
Mycat物理节点

mycat_web12.png
SQL 表分析

mycat_web13.png
SQL监控

mycat_web14.png

高频SQL监控

mycat_web16.png
SQL解析

mycat_web17.
pngmycat_web18.png
命令汇总

 java -version    wget http://apache.fayea.com/zookeeper/zookeeper-3.4.8/zookeeper-3.4.8.tar.gz    ll zookeeper-3.4.8.tar.gz    tar -zxvf zookeeper-3.4.8.tar.gz    cd zookeeper-3.4.8/conf    grep -v "^#" zoo_sample.cfg    cp zoo_sample.cfg zoo.cfg    bin/zkServer.sh start    netstat -ant | grep 2181    wget https://github.com/MyCATApache/Mycat-download/raw/master/mycat-web-1.0/Mycat-web-1.0-SNAPSHOT-20160218145029-linux.tar.gz    file Mycat-web-1.0-SNAPSHOT-20160218145029-linux.tar.gz    tar -zxvf Mycat-web-1.0-SNAPSHOT-20160218145029-linux.tar.gz    ./start.sh    netstat -ant | grep 8082    iptables -L -nv | grep 8082
0 0
原创粉丝点击