SQL是Structured Query Language(结构化查询语言)的缩写。SQL是专为数据库而建立的操作命令集,是一种功能齐全的数据库语言。在使用它时,只需要发出“做什么”的命令,“怎么做”是不用使用者考虑的。SQL功能强大、简单易学、使用方便,已经成为了数据库操作的基础,并且现在几乎所有的数据库均支持SQL。 一、在两台Ubuntu机器上安装mysql 1.检查系统中是否安装了mysql
这个是已经安装了的
没有安装的话执行上条命令 =============================== MySQL的一些简单管理:
启动MySQL服务: sudo start mysql
停止MySQL服务: sudo stop mysql
修改 MySQL 的管理员密码: sudo mysqladmin -u root password newpassword 二、Master主服务器上的配置(103.251.237.42) 1.编辑my.cnf (命令查找文件位置:find / -name my.cnf) 在[mysqld]中注释掉 bind-address = 127.0.0.1 不然mysql无法远程 server-id = 1 中 1 是可以自己定义的,但是需要保持它的唯一性,是服务器的唯一标识 log_bin 启动MySQL二进制日志
binlog_do_db 指定记录二进制日志的数据库
binlog_ignore_db 指定不记录二进制日志的数据库。
注释掉 binlog_do_db 和 binlog_ignore_db ,则表示备份全部数据库 做完这些后,重启下数据库 2.登陆主服务器mysql 创建从服务器用到的账户和权限; @之后IP可访问主服务器,这里值定从服务器IP 新建密码为masterbackup的masterbackup 用户,并赋予replication slave 权限 可以看到用户masterbackup 已经添加 3.查看主数据库的状态
记录 mysql-bin.000007 以及 276,编写以下命令待用; change master to master_host='103.251.237.42',master_port=3306,master_user='masterbackup',master_password='masterbackup',master_log_file='mysql-bin.000007',master_log_pos=276; 三、Slave从服务器配置上的配置(103.251.237.45) 1.编辑my.cnf(命令查找文件位置:find / -name my.cnf)
在[mysqld]中
relay-log = slave-relay-bin relay-log-index = slave-relay-bin.index 暂时不清楚这是做什么的。加入这两条。 重启mysql服务
登陆mysql,停止同步命令
执行用上面准备的命令; 登录Slave从服务器,连接Master主服务器:
重新启动数据同步;
查看Slave信息;如图两句都为yes,则状态正常 四、从主从服务器测试结果
在主服务器创建一个数据库
在从服务器上查看刚才创建的数据库 可以查到,主从服务器配置完成。 ================================================================================================= 因为以上是两台新机器做的mysql主从配置;所以不需要从主服务器导入之前的数据到从服务器;那么如果主服务器已经有了一部分数据,就需要增加从主服务器导入数据到从服务器的操作; 在配置主服务器赋予从服务器权限后; 1.执行以下命令锁定数据库以防止写入数据;
这个命令是全局读锁定,执行命令之后所有库所有表都将被锁定为只读。一般都是用在数据库联机备份,这个时候数据库的写操作将被阻止,读操作可以顺利进行; 2.退出mysql命令行,导出数据库到root文件下并命名为all.sql; 3.使用scp命令传输数据库文件all.sql到从服务器; 4.再次连接数据库进入mysql命令查看master状态,记录file 和position 的值;
5.解锁数据表; 在配置从服务器前,先导入数据; 1. 导入主服务器的数据库; 2. 之后的配置如之前的从服务器配置; 以上就是mysql主从同步配置的方法的详细内容,更多请关注php中文网其它相关文章!
学习教程快速掌握从入门到精通的SQL知识。
|