zoukankan      html  css  js  c++  java
  • mycat理解

    1、为什么叫mycat?

      其实mycat在最早的初期版本只支持mysql一种数据库,换句话说,

    mycat就是mysql的增强版,在mysql中只是数据库,并没有读写分离和

    分库分表,这些操作全部是由mycat进行实现。

    注意:主从复制(数据同步)功能mycat没有,必须要使用mysql所提供的。

    2、什么是mycat?

      2.1 mycat是完全开源的,并且面向大型企业的大数据库集群

      2.2 支持事务、ACID、可以替代mysql的嘉庆版数据库,目前已经支持了

        很多数据库(关系型和非关系型数据库都包括)

    3、什么是HDFS?

      H:Hadoop

      D:Distributed

      F:File

      S:System

      Hadoop(大数据)分布式存储系统;大数据:数据量非常大,且以文件形式保存

       HDFS只做数据的存储;

      mycat:

      H:High(Big Data)

      D:Distributed

      D:Data

      S;System

    4、mycat的两大核心

      4.1 分库分表

        将同一个系统(项目)的同一张表拆分到不同服务器进行存放

      4.2 读写分离

        将同一个系统(项目)的读操作和写操作分别在不同服务器上完成

     5、Linux配置mysql

      5.1 从官网下载mysql5.tar.gz

      5.2 使用xftp把mysql的压缩包上传至服务器上(/home/apps/下)

      5.3 解压mysql压缩包

        tar -zxvf xxxx

      5.4 把mysqlxxx改名为mysql

        mv mysqlxxxx mysql

      5.5 把mysql目录中创建data目录(存放日志的目录)

        mkdir data

      5.6 创建mysql的用户群组

        groupadd mysql(群组的名字)

      5.7 创建mysql群组下的用户

        useradd -r -s /sbin/nologin -g mysql(群组的名字) mysql(用户的名字) -d /home/apps/mysql

      5.8 为创建mysql新用户进行授权

        chown -R mysql.mysql /home/apps/mysql

      5.9 初始化mysql数据库

        !!!注意: 在初始化mysql数据库的时候回出现一个默认的登录密码,这个密码我们

        需要记录下来,因为接下来会用,直到我们后面修改密码后,这个密码才不再需要

        在mysql的bin目录中

        !!!注意:在bin目录中有很多启动命令,一定要使用mysqld,不要用成了mysql了

        ./mysqld --initialize --user=mysql --basedir=/home/apps/mysql --datadir=/home/apps/mysql/data

        获取的初始密码是显示出来的信息的最后一串字符串

      5.10 修改my.cnf文件

        vim /etc/my.cnf

        对该文件的配置如下:  

          [mysqld]
          basedir=/home/apps/mysql
          datadir=/home/apps/mysql/data
          socket=/tmp/mysql.sock
          user=mysql
          port=3306
          character_set_server=utf8
          # Disabling symbolic-links is recommended to prevent assorted security risks
          symbolic-links=0

          [mysqld_safe]
          log-error=/home/apps/mysql/data/error.log
          pid-file=/home/apps/mysql/data/mysqld.pid
          tmpdir=/tmp

      5.11 把mysql添加到系统服务器中

        在mysql的目录中:

        cp support -files/mysql.server /etc/init.d/mysqld

          mysqld文件其实并不存在(也就是说在init.d目录下并不存在mysqld)

          是把mysql.server文件复制过去后修改了名字,所以mysqld就是mysql.server文件

      5.12 编辑mysqld文件

        vim /etc/init.d/mysqld

          basedir=/home/apps/mysql

          datadir=/home/apps/mysql/data

          mysqld_pid_file_path=/home/apps/mysql/data/mysqld_pid

      5.13 启动mysql服务

        service mysqld start

          看到success说明启动成功!

      5.14 登录mysql(这里需要用到第九步的密码了)

        在mysql的bin目录下

          ./mysql -u root -p

          然后将刚刚的面粘贴上去

      5.15 修改root用户的密码

        所有的命令行/sql语句都必须要带分号“;”,而且所有的字符串都必须要使用单引号,不能使用双引号

          set password for 'root'@localhost=password('123456');

      5.16 配置mysql的远程访问

        查看所有的数据库:show databases;

        使用mysql数据库:use mysql;

        查看mysql数据库下的所有表名:show tables;

        update user set host='%' where user='root' limit 1;

      5.17 提交和刷新

        flush privileges;

        

      

      

    乾坤未定,你我皆是黑马
  • 相关阅读:
    Linux部署springboot项目创建守护进程
    实现数据库安全性控制的方法和主要技术。
    推荐一些学习MySQL的资源
    带你解析MySQL binlog
    一文解决MySQL时区相关问题
    手把手教你看MySQL官方文档
    MySQL关于日期为零值的处理
    关于日期及时间字段的查询
    是时候学习Linux了
    MySQL分区表最佳实践
  • 原文地址:https://www.cnblogs.com/liuqijia/p/11560307.html
Copyright © 2011-2022 走看看