MySQL大型分布式集群
解决针对大型网站架构中持久化部分,大量数据存储以及高并发访问所带来是数据读写问题
课程内容
1.大型分布式网站架构的发展
⒉环境搭建
3.主从复制
4.主主复制
5.负载均衡集群6.高可用集群
7.分库分表
8. MyCat
背景
·系统的性能瓶颈
数据安全性
·性能与成本
大型分布式架构的发展
1.初始阶段
⒉应用服务和数据服务分离
3.使用缓存改善网站性能
4.使用应用服务器集群改善网站的并发处理能力
5.数据厍读写分离
6.使用反向代理和CDN加速网站响应
CDN静态资源分发
7.使用分布式文件系统和分布式数据库系统
8.使用NoSQL和搜索引擎
9.业务拆分
10.分布式服务
环境搭建
1.安装虚拟机
⒉新建虚拟机
3.安装CentOS
配置网络
IPADDR192.168.153.100
NETMASK255.255.255.0
GATEIAY192.168.153.2
cd /etc/sysconfig/network-scripts/
vim ifcfg-eth0
service network restart # 重启网卡
ifconfig# 查询IP
ping 192.168.153.1# 测试网络. 若ping’不通, 可以把win的防火墙关掉
DNS=8.8.8.8
4.安装mysql
安装前可以拍快照保存虚拟机
yum安装
官网下载yum的rpm安装包
mysql57-community-release-el6-11.noarch.rpm
yum localinstall 安装yum源
yum localinstall mysql57-community-release-el6-11.noarch.rpm
设置版本的可用标志为1
cd /etc/yum.repos.d/
vim mysql-community.repo
enabled=1
yum安装
yum install mysql-community-server
启动
service mysqld start
初始密码在日志文件
log-error=/var/log/mysqld.log
more /var/log/mysqld.log
修改root, 修改密码复杂度
show variables like ‘%password%’
MySQL初次见面续·
创建数据库create database db_name;
查看数据库show database db_name;
删除数据库drop database db_name;
创建用户create user rep@‘%’ identified by ‘passwd’
赋予权限grant all on tb_name to user_name;
修改用户密码alter user root@‘%’ identified by ‘passwd’
删除用户drop user user_name;
创建表create table tb_name ();alter table alter column xxx type xxx;
查看表结构desc tb_name;
查看当前数据库下的表 show tables;
查看建表语句show create table tb_name;
删除表drop table tb_name;
·插入数据insert into tb_name () values (), ();
查询数据select * from
修改数据update table set xxx= xxx where
删除数据delete from tb_name, truncate table tb_name
备份数据库 mysqldump > sql
恢复数据库 mysql -d db_name < sql 或者 mysql >> use database >> source sql
主从复制
·认识主从复制
了解binlog日志
·搭建mysql主从复制
·使用java来演示读写分离操作