linux下安装mysql(实现主从数据库)

实现数据库读写分离

克隆两台虚拟机,并且配置静态的ip地址

1.jt-msater

2.jt-slave
这里写图片描述

数据库备份的方式:

1.数据库备份的原因:

2.数据库备份的方式:

1.冷备份:在规定的时间,通过数据库工具定期的将数据库文件进行转储和导出
    一般公式的数据库的备份是 一式三份

由于数据库文件较大,所以导出的时间较长,时间一长,就容易出问题,如果做数据库的导出操作时,还有大量的入库操作,则导出是存在风险的,定期导出数据库,会存在
数据丢失的风险
虽然冷备份存在诸多的问题,但是冷备份是恢复数据的最后手段

2.热备份:能够将数据库备份实现实时的数据同步,MySQLs数据库中提供了完善的数据库备份机制

这里写图片描述

组件介绍:

1.二进制文件:
    作用:当主数据库发生"更新"时会将更新的数九块写入二进制日志文件中
2.I/O线程:
    作用:实时监听二进制日志文件是否有更新操作,如果有更新操作则读取更新的内容,  内部有一个位置position (相当于指针),每次更新操作,位置都会增加.
比如position从100到120,那么就会读取这些更新的内容(通过内部的指针位置做到实时监听)
3.中继日志:
    作用:保存主库的更新数据,是临时存放的地址
4.Sql线程:
    作用:将中继日志的信息更新到数据库中

中继日志的必要性:备份时是通过网络操作,网络会有延迟,如果直接写入数据库,sql语句会不玩整,会出现问题.这样实现了数据库备份的异步操作,读跟写是互不影响(这样做更加的安全)

安装mysql

1.启动虚拟机:

首先检查本机ip地址: ifconfig

这里写图片描述

2.配置静态ip:(数据库连接时ip地址必须是要固定的)
这里写图片描述

3.使用xShell进行远程连接


4.安装MySQL:
4.1将MySQL的安装包上传到 /usr/local/src/mysql/ 目录下
4.2解压安装包: tar -xvf …
这里写图片描述

解压之后的文件:

这里写图片描述

4.3安装MySQL(安装是有顺序的rpm可以安装的程序(相当于windows下的.exe))

56-debuginfo ->  Shared  -> Client -> Server

1.rpm -ivh Percona-Server-56-debuginfo-5.6.24-rel72.2.el6.x86_64.rpm

这里写图片描述

2.rpm -ivh Percona-Server-shared-56-5.6.24-rel72.2.el6.x86_64.rpm
这里写图片描述

3.rpm -ivh Percona-Server-client-56-5.6.24-rel72.2.el6.x86_64.rpm

这里写图片描述

4.rpm -ivh Percona-Server-server-56-5.6.24-rel72.2.el6.x86_64.rpm

这里写图片描述

5启动MySQL:service mysql start [停止:service mysql stop , 重启:service mysql restart]

这里写图片描述

6.设定用户名和密码(学习阶段最好都使用root)

mysqladmin -u root password “root” 

7.导入sql语句
7.l将sql文件上传到mysql目录下:

这里写图片描述

7.2登入mysql,将sql文件导入到数据库:
source jt.sql
这里写图片描述

7.3导入完成之后,就去查询数据库,看数据是否导入成功

8.开启mysql的权限:由于需要跨系统访问数据库:

grant [权限] on [数据库名].[表名] to ['用户名']@['web服务器的ip地址'] identified by ['密码'];

grant all on *.* to 'root'@'%' identified by 'root';
FLUSH   PRIVILEGES;  (刷新一下权限,让设置生效,不刷新的话,可能不会生效)

9.暴露3306端口:

iptables -I INPUT -p tcp --dport 3306 -j ACCEPT

10.使用本机的SQLyog去访问linux操作系统上的数据库

注意点:

在linux系统上的mysql数据库只能开启一次,如果开启之后没有关闭,就重新再开启,那么数据库会出现问题,开启不了,并且也关闭不了.包报错:

解决的办法就是查看mysql的进程号,然后强制把mysql的进程号杀死.接着启动mysql基本就能行,注意root的进程号是不能杀的.如果还启动不了,就再查一次进程,
然后再杀一次进程

查看进程: ps -ef | grep mysql
强制杀死进程: kill -9 6622  (6622是进程号)

开启二进制日志文件(做主从复制时需要mysql的二进制日志)

默认的条件下二进制日志文件是关闭的,如果需要主从的同步需要手动开启       

步骤:

1.编辑mysql的系统配置文件 my.cnf/my.ini(指定mysql端口/数据库的位置)

2.检测二进制文件是否启动

配置my.cnf文件
vim /etc/my.cnf
这里写图片描述

将mysql服务项重启
这里写图片描述

检测二进制日志文件是否启动

cd /var/lib/mysql/

这里写图片描述

从数据库的搭建(跟上面主数据库搭建的方法一样,重复上面的所有步骤,但是只需要修改my.cnf文件是修改服务Id号为2)

这里写图片描述

配置完之后,两个操作系统最好都照一份快照

猜你喜欢

转载自blog.csdn.net/qq_38200548/article/details/80252783
今日推荐