CentOS下使用yum安装Mysql,以及Mysql主从复制的配置

centos7下快速安装mysql
CentOS 7的yum源中貌似没有正常安装MySQL时的mysql-sever文件,需要去官网上下载

 #wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
#rpm -ivh mysql-community-release-el7-5.noarch.rpm
 #yum install mysql-community-server

成功安装之后重启mysql服务

1

# service mysqld restart

初次安装mysql是root账户是没有密码的
设置密码的方法

# mysql -uroot
mysql> set password for root@localhost=password('mypasswd');
mysql> exit

搞定!

打开3306端口

/sbin/iptables -I INPUT -p tcp --dport 3306 -j ACCEPT
/etc/rc.d/init.d/iptables save#修改生效
/etc/init.d/iptables status#查看配置权连接mysql
开启MYSQL远程访问权限
语法:
grant [权限] on [数据库名].[表名] to ['用户名']@['web服务器的ip地址'] identified by ['密码'];

grant all on *.* to 'root'@'%' identified by 'root';
或者指定IP地址
grant all on *.* to 'root'@'192.168.1.103' identified by 'root';
登录
mysql –uroot –pmypasswd

导入数据库文件,根据条件加上文件的路径,以下这种情况是在文件所在的文件夹下打开终端
mysql>source jtdb.sql;
mysql>use jtdb;
mysql>set names utf8;               #防止乱码

在第二台服务器上安装mysql,方法同上

配置主服务器:

编辑主master服务器配置文件

vim /etc/my.cnf

在[mysqld]节点下加入两句话

server-id=1
log-bin=mysql-bin       #启用二进制日志

重启服务:service mysql restart
登录mysql:mysql –uroot -proot
mysql>flush tables with read lock; #数据库锁表,不让写数据
mysql>show master status; #查看MASTER状态(这两个值File和Position)
CentOS下使用yum安装Mysql,以及Mysql主从复制的配置_第1张图片

从启动好后,记得要解除锁定

mysql>unlock tables;

配置从服务器
修改UUID

由于data拷贝是全目录拷贝,将/var/lib/mysql/auto.cnf也拷贝,它里面记录了对数据库的一个uuid标识,随便产生个新的uuid,替换掉新目录中的auto.cnf中的uuid串即可。
可以用select uuid()来产生新值,手工黏贴到auto.cnf文件中。

修改/etc/my.cnf增加一行

server-id=2

重启服务
service mysql restart
通过mysql命令配置同步日志的指向:

change master to master_host='192.168.58.130',master_port=3306,
master_user='root',master_password='007617',master_log_file='mysql-bin.000003',master_log_pos=120;

master_host 主服务器的IP地址
master_port 主服务器的PORT端口
master_log_file 和主服务器show master status中的File字段值相同
master_log_pos 和主服务器show master status中的Position字段值相同

start slave; #stop slave;停止服务,出错时先停止,再重新配置
show slave status\G; #查看SLAVE状态,\G结果纵向显示。必须大写.
只有出现两个yes才算成功。
注意:如果出错,可以看后面的错误信息。观察Slave_SQL_Running_State字段,它会记录详细的错误信息。如果正常,上面两个线程执行都应该是YES。这样当主库创建数据库、创建表、插入数据时,从库都会立刻同步,这样就实现了主从复制。

CentOS下使用yum安装Mysql,以及Mysql主从复制的配置_第2张图片

service mysql restart #重启服务

你可能感兴趣的:(linux相关)