Linux 安装mysql,mariadb,mysql主从同步

 myariadb安装

centos7  mariadb的学习
在企业里面,多半不会使用阿里云的mariadb版本,因为版本太低,安全性太低,公司会配置myariadb官方的yum仓库 
		1.手动创建mariadb的仓库文件
			touch Mariadb.repo
		2.写入配置信息
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.1/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1
		3.尝试安装最新版本mariadb
			yum install mariadb-server mariadb
	
	5.使用mysql,启动
	systemctl start mariadb 
	
	6.初始化数据库
	mysql_secure_installation
	
	7.配置数据库的中文支持
		1.修改mysql的配置文件,支持中文编码
		
		cat /etc/my.cnf  和我一致就行 
[mysqld]
character-set-server=utf8
collation-server=utf8_general_ci
log-error=/var/log/mysqld.log
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
symbolic-links=0


[client]
default-character-set=utf8

[mysql]
default-character-set=utf8
		2.在服务器上,修改了配置文件,都要重启数据库服务
		systemctl restart mariadb 
		
		3.在utf8编码下,配置mariadb
			show create table stu;
			show create database s16;
			
	8.在远程用 mysql客户端去连接服务端,方式有哪些
		1.navicat
		2.cmd  
			mysql  -uroot -p  -h 192.168.15.53
		3. pycharm 
		4.pymysql  python
		5.orm  django
		
	9.配置mysql支持远程连接的sql语句
		授权mariadb远程连接
		#授予root用户对所有的库表所有的权限,在所有的机器上操作,皆可登录
		grant all privileges on *.* to root@'%' identified by 'centos';
	
		刷新授权表:
		flush privileges;

	10.数据库备份操作
		mysqldump -u root -p --all-databases > /tmp/db.dump
		数据导入,方式有2种
		1.mysql -uroot -p  <  /tmp/db.dump 
		2.进入mysql命令行,输入source /tmp/db.dump 
		

mysql主从同步技术

	1.环境准备,准备2台机器,一个master 一个slave 
		192.168.15.53  主库 
		192.168.15.94  从库
		
	2.配置主库的环境
		1.修改主库的配置文件,开启binlog功能
			vim /etc/my.cnf
			[mysqld]
			server-id=1
			log-bin=s16-mysql-bin

		2.重启数据库
		systemctl restart mariadb
	3.创建用于数据同步的账号
	create user 'zhanghao'@'%' identified by 'mima';
	
	4.授予这个账号,一个slave的身份标识
	grant replication slave on *.* to 'zhanghao'@'%';
	
	5.锁表
	flush table with read lock;
	
	6.数据库信息导出
	mysqldump -uroot -p   --all-databases > /opt/db.dump  
	
	
	
在mariadb从库的操作
	1.阿里云的源,和官方源,同一安装软件包名如下 
	yum install mariadb-server mariadb -y  
	
	
	2.配置从库的配置文件,开启server-id 
	vim /etc/my.cnf 
		写入如下操作
		[mysqld]
		server-id=3
		read-only=true

		character-set-server=utf8
		collation-server=utf8_general_ci
		log-error=/var/log/mysqld.log
	3.重启数据库
	systemctl restart mariadb 

	主库中cd /opt/
	传输 db.dump 到从库服务器 
	scp db.dump root@192.168.158.132:/opt/ 或者软件传
	导入/opt 中的db.dump
	mysql -uroot -p < /opt/db.dump
	重启mariadb
	systemctl restart mariadb



	4.在从库,通过一条命令,开启主从同步
	change master to master_host='192.168.15.56',
	master_user='zhanghao',
	master_password='mima',
	master_log_file='s16-mysql-bin.000001',
	master_log_pos=622;
	
	5.开启slave同步
	start slave ;
	
	6.检查主从同步状态
	show slave status\G 
	当你检查这2条参数,yes的时候,主从ok
	
	Slave_IO_Running: Yes
	Slave_SQL_Running: Yes

	
此时解锁主库!!
此时解锁主库!!
此时解锁主库!!

unlock tables;
	
验证主从同步是否正常 
posted @ 2019-02-18 21:23  Niuli'blog  阅读(220)  评论(0编辑  收藏  举报