PXC,MYSQL存储引擎

PXC介绍

在这里插入图片描述

PXC特点:

  • 数据强一致性,无同步延迟
  • 没有主从切换操作,无需使用虚拟ip
  • 支持InnDB存储引擎
  • 多线程布置
  • 部署使用简单
  • 支持节点自动加入,无需手动拷贝数据

相应端口

端口说明
3306数据库服务端口
4444SST端口
4567集群通讯端口
SSTState Snapshot Transfer 全量同步
ISTIncrementl State Transfer 增量同步

1.安装软件
步骤一:环境准备

配置主机名与ip地址绑定(3台机子都要配)
配置服务器192.168.4.71

]#  vim /etc/hosts
192.168.4.71     pxcnode71
192.168.4.72     pxcnode72
192.168.4.73     pxcnode73
:wq

在任意一台服务器上ping 对方的主机名,ping通为配置成功。
root@host71 ~]# ping -c 2 pxcnode71 //成功

步骤二:安装软件包

1)在192.168.4.71 服务器安装软件包
软件包之间有依赖注意软件包安装顺序

# rpm -ivh libev-4.15-1.el6.rf.x86_64.rpm //安装依赖
# yum -y install percona-xtrabackup-24-2.4.13-1.el7.x86_64.rpm
# rpm -ivh qpress-1.1-14.11.x86_64.rpm //安装依赖
# tar -xvf Percona-XtraDB-Cluster-5.7.25-31.35-r463-el7-x86_64-bundle.tar
# yum -y install Percona-XtraDB-Cluster-*.rpm

二,配置服务:
修改mysqld.cnf文件
修改mysqld_safe.cnf文件
修改wsrap.cnf文件
启动服务

步骤一:
1).修改mysqld.cnf文件

[root@pxcnode71 ~]# vim /etc/percona-xtradb-cluster.conf.d/mysqld.cnf
[mysqld]
server-id=71                      //server-id 不允许重复
datadir=/var/lib/mysql                 //数据库目录
socket=/var/lib/mysql/mysql.sock        //socket文件
log-error=/var/log/mysqld.log        //日志文件
pid-file=/var/run/mysqld/mysqld.pid    //pid文件
log-bin                    //启用binlog日志
log_slave_updates            //启用链式复制
expire_logs_days=7            //日志文件保留天数修改mysqld_safe.cnf文件

2)分别修改3台服务器的mysqld_safe.cnf (使用默认配置即可)

[root@pxcnode71 ~]# vim /etc/percona-xtradb-cluster.conf.d/mysqld_safe.cnf
[mysqld_safe]
pid-file = /var/run/mysqld/mysqld.pid
socket   = /var/lib/mysql/mysql.sock
nice     = 0
:wq

3)分别修改3台服务器的wsrep.cnf

[root@pxcnode71 ~]# vim /etc/percona-xtradb-cluster.conf.d/mysqld_safe.cnf
wsrep_cluster_address=gcomm://192.168.4.71,192.168.4.72,192.168.4.73 ==//成员列表==
wsrep_node_address=192.168.4.71   //本机ip
wsrep_cluster_name=pxc-cluster     //集群名
wsrep_node_name=pxcnode71       //本机主机名
wsrep_sst_auth="sstuser:123qqq...A"   //SST数据同步授权用户及密码
:wq

4)启动集群服务
注意:在1台服务器上执行即可(192.168.4.71),首次启动服务时间比较长

#systemctl  start mysql@bootstrap.service   //启动集群服务
#grep pass /var/log/mysqld.log     //查看数据库管理员初始登录密码
2019-06-20T12:29:42.489377Z 1 [Note] A temporary password is generated for root@localhost: W.HiOb8(ok)
#mysql –uroot –p’ W.HiOb8(ok)_’   //使用初始密码登录
Mysql> alter user  root@”localhost” identified by “123456;   //修改登录密码
MySQL> exit;
#mysql –uroot –p123456    //使用修改后的密码登录
Mysql> garnt reload, lock tables,replication client,process on *.*  to
sstuser@"localhost” identified by  “123qqq…A”;  //添加授权用户

5)启动数据库服务
启动主机pxcnode72的数据库服务,会自动同步pxcnode71主机的root初始密码和授权用户sstuser

#systemctl  start mysql    //启动数据库服务
#netstat -utnlp  | grep :3306       
#netstat -utnlp  | grep :4567  

6)启动主机pxcnode73的数据库服务,会自动同步pxcnode71主机的root初始密码和授权用户sstuser

#systemctl  start mysql   //启动数据库服务
#netstat -utnlp  | grep :3306      
#netstat -utnlp  | grep :4567

存储引擎概述

  • 作为可插拔式的组件提供
  • MYSQL服务软件自带的功能程序,处理表的处理器
  • 不同的存储引擎有不同的功能和数据存储方式
  • MYSQL 5.0/5.1 --> MyISAM
  • MYSQL 5.5/5.6 --> InnoDB

列出存储引擎类型
–show engines;
修改存储引擎
– alter table 表名 engines=存储引擎名
设置数据库服务使用的存储引擎

#vim /etc/mycnf
[mysqld]
......
default-storage-engine=存储引擎名
#systemctl restart mysqld

Myisam存储引擎

主要特点

  • 支持表级锁
  • 不支持事务,事务回滚,外键
    表文件
  • 表名.frm //表结构
  • 表名.MYI //索引
  • 表名.MYD ==//数据

innodb存储引擎

主要特点

  • 支持行级锁定
  • 支持事务,事务回滚,外键
    表文件
  • 表名.frm
  • 表名.ibd
    事务日志文件
  • ibdata1
  • ib_logfile0
  • ib_logfile1

MYSQL锁级制

锁粒度
表级锁对整张表加锁
行级锁仅对被访问的行分别加锁
锁类型
读锁(共享锁)支持并发读
写锁(互斥锁,排它锁)是独占锁,上锁期间其他线程不能读表和写表
  • 查看当前锁状态
    show status like “table_lock”;

事务特性(ACID)

  • Atomic : 原子性
    – 事务的整个操作是一个整体,不可分割,要么全部成功,要么全部失败

  • Consistency : 一致性
    – 事务操作的前后,表中的记录没有变化.

  • Isolation : 隔离性

  • 事务操作是相关隔离不受影响的

  • Durability : 持久性
    – 数据一旦提交,不可改变,永久改变表数据

  • 相关命令

mysql> show variables like “autocommit”; //查看提交状态
mysql> set autocommit=off"; //关闭自动提交
mysql> rollback; //数据回滚
mysql> commit; //提交数据

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值