数据库主从同步
主服务器
vim /etc/my.cnf
添加
server-id=1
log-bin=master-bin
log-bin-index=master-bin.index
保存重启
登陆数据库,show master status
附属数据库
同上添加如下内容重启
主数据库
create user repl;
grant replication slave on *.* to 'repl'@'192.168.199.233' identified by '123456';
flush privileges;
附属数据库
change master to master_host='47.106.205.20',master_port=3306,master_user='repl',master_password='123456',master_log_file='master-bin.000001',master_log_pos=0;
grant replication slave on *.* to 'repl' @ ' 192.168.199.233' identified by 'mysql'
报错解决
skip-grant-tables
然后重新启动服务,再登录数据库就不要我们输入密码了
这个时候我成功登录数据,可是不小心又把所有的用户给删除了又无法登陆了,这个时候我又改动配置文件可以登录了想再数据库里面添加用户,可是执行了添加用户的命令后就提示我如下:
ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement
mysql> GRANT ALL PRIVILEGES ON *.* TO IDENTIFIED BY '123' WITH GRANT OPTION;
ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement
这个时候我们只需要flush privileges 一下,在添加用户就OK了,
mysql> flush privileges;
Query OK, 0 rows affected (0.01 sec)
mysql> GRANT ALL PRIVILEGES ON *.* TO IDENTIFIED BY '123' WITH GRANT OPTION;
Query OK, 0 rows affected (0.00 sec)
这个时候我们成功搞定了,再登录就可以了。
如果报错如下信息:
Error: Cannot retrieve repository metadata (repomd.xml) for repository: InstallMedia. Please verify its path and try again
You could try using --skip-broken to work around the problem
You could try running: rpm -Va --nofiles --nodigest
我们只要到/etc/yum.repo.s下面把packetxxxx.repo和RedHat.repo两个文件删除掉,再启动就可以了,
希望你能搞定,这个问题不是很难多看看错误提示信息就可以了。