Coder Social home page Coder Social logo

mycat-server's Introduction

GitHub issues GitHub forks GitHub stars MyCAT

MyCAT is an Open-Source software, “a large database cluster” oriented to enterprises. MyCAT is an enforced database which is a replacement for MySQL and supports transaction and ACID. Regarded as MySQL cluster of enterprise database, MyCAT can take the place of expensive Oracle cluster. MyCAT is also a new type of database, which seems like a SQL Server integrated with the memory cache technology, NoSQL technology and HDFS big data. And as a new modern enterprise database product, MyCAT is combined with the traditional database and new distributed data warehouse. In a word, MyCAT is a fresh new middleware of database.

Mycat’s target is to smoothly migrate the current stand-alone database and applications to cloud side with low cost and to solve the bottleneck problem caused by the rapid growth of data storage and business scale.

Features

  • Supports SQL 92 standard
  • Supports MySQL cluster, used as a Proxy
  • Supports JDBC connection with ORACLE, DB2, SQL Server, simulated as normal MySQL Server connection
  • Supports MySQL cluster, percona cluster or mariadb cluster, providing high availability of data fragmentation clusters
  • Supports automatic failover and high availability
  • Supports separation of read and write, dual-master with multi-slave, single-master with multi-master of MySQL model
  • Supports global table, automatically fragment data into multiple nodes for efficient relational query
  • Supports the unique fragmentation strategy based on ER-relation for efficient relational query
  • Supports multiple platforms, easy deployment and implementation

Advantage

  • Based on Alibaba's open-source project Cobar, whose stability, reliability, excellent architecture and performance, as well as many mature use-cases make MyCAT have a good starting. Standing on the shoulders of giants, MyCAT feels confident enough to go farther.
  • Extensively drawing on the best open-source projects and innovative ideas, which are integrated into the Mycat’s gene, make MyCAT be ahead of the other current similar open-source projects, even beyond some commercial products.
  • MyCAT behind a strong technical team whose participants are experienced more than five years including some senior software engineer, architect, DBA, etc. Excellent technical team to ensure the product quality of Mycat.
  • MyCAT does not rely on any commercial company. It’s unlike some open-source projects whose important features is enclosed in its commercial products and making open-source projects like a decoration.

Roadmap

  • On the basis of MySQL’s support, MyCAT add more support of commercial open-source database, including native support of PostgreSQL, FireBird and other open-source databases, as well as indirect support via JDBC of other non-open-source databases such as Oracle, DB2, SQL Server etc.
  • More intelligent self-regulating properties, such as automatic statistical analysis of SQL, automatic creating and adjusting indexes. Based on the frequency of read and write, MyCAT automatically optimizes caching and backup strategies
  • Achieve a more comprehensive monitoring and management
  • Integrated with HDFS, provide SQL commands, load databases into HDFS for rapid analysis
  • Integrated excellent open-source reporting tools to make MyCAT have data analysis capability

Download

There are some compiled binary installation packages in Mycat-download project on github at Mycat-download.

Document

There are some documents in Mycat-doc project on github at Mycat-doc.

Play with Mycat -- Mycat All In One

All in one is the integrated developing & testing environment ,a centos 7 virtual machine with Mycat-server,Mycat-WEB,MYSQL,ZooKeeper installed .

You can execute the following steps to get mycat working platform: import CentOs7.voa

  • install Oracle VM VirtualBox
  • run Oracle VM VirtualBox
  • download mycat-all-in-one ,press here to get all-in-one,password:v63y
  • File -> Import Appliances
  • choose the path you download CentOS 7.ova, choose the ova file
  • you can get everything done,just press next

setup virtual box

  • login user name : root, password: 123456
  • run the multiple mysql instances by the commands shown as follow:
mysqld_multi start

setup Mycat

  cd /opt/mycat
  ./bin/mycat start

run zookeeper

  • cd /opt/zookeeper-3.4.6
  • bin/zkServer.sh start
  • bin/zkCli.sh

connect to Mycat --> this step should be done on you host computer

  • setup Navicat Premium
  • create a connection to Mycat with IP:8066 , username : test , password: test
  • if connection correct , you would see the database's name is TESTDB
  • then you could try everything you like ,just have fun !

pay attention to Mycat's IP in 'connect to Mycat' step ,
the IP address may different from your own host IP ,
you need to justify the IP by rewrite the file under /etc/sysconfig/network-scripts/ifcfg-enp0s3 ,
then run

service network restart

to let the modified file work

mycat-server's People

Contributors

abirdman avatar apachemycat avatar astonegod avatar bengong avatar coderczp avatar digdeep126 avatar ericj100 avatar fireflyhoo avatar ifeve-com avatar ifrenzyc avatar jaggerliu avatar kirill-vlasov avatar linzhiqiang0514 avatar magicdoom avatar mayuanxiaonong avatar mycatmerger avatar runfriends avatar sohudo avatar songwie avatar stonelion avatar suxl avatar tommyhi avatar wdw1206 avatar wenerme avatar zhuam avatar zzzcrazypig avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.