logo资料库

ubuntu server下安装mysql 以及设置双机热备份.docx

第1页 / 共3页
第2页 / 共3页
第3页 / 共3页
资料共3页,全文预览结束
直接使用命令安装 apt-get install mysql-server 配置让外部访问数据库 vim /etc/mysql/my.cnf #这里有一个地方要注意 #因为默认是只允许本地访问数据库的 如果你有需要 可以打开。 bind-address 127.0.0.1 #这一句是限制只能本地访问 mysql 的。如果有需要其他机器访问 把这句话用 #注释掉 #bind-address 127.0.0.1 进入 mysql mysql -u root -proot 密码那没有空格 GRANT ALL ON *.* TO root@'%' IDENTIFIED BY 'mysql' WITH GRANT OPTION; 让外网访问 mysql 是远程访问密码 然后配置双机热备份 主机 IP:192.168.1.201 从机 IP:192.168.1.205 1、主机操作: mysql -u root -proot 创建需要备份的数据库 create database angogps; 创建用户并赋于复制的权限 GRANT REPLICATION SLAVE ON *.* TO 'lisi'@'192.168.1.205' IDENTIFIED BY 'skonbo998'; 编辑 mysql 配置文件 my.cnf 在[mysqld]下加上 server-id=1 //主机 id,可以任意数字,一般都为 1 log-bin=mysql-bin
//生成的 bin-log 文件名,可以在 mysql 数据文件夹下找到 binlog-do-db=angogps 允许被复制的库名,可以设置多个,用“,”分开 设置完毕之后重启数据库/etc/init.d/mysql restart 在进入数据库执行 show master status; 通过该命令获得 File 和 Position,在 slave 中有用。 2、从机操作 编辑 myslq 配置文件 my.cnf: [mysqld] server-id=2 //只要和主机不同即可 slave-skip-errors = 1062//这个我不确定要不要加 但是我在网上说 如果日志 中出现了 1062 的错误,可能是错误的 select,或 update 操作,master 是跳过 这些操作,但是被记录到了二进制日志中,slave 会依据二进制中的语句做相同 的动作,就会报错,这里先加上 有备无患 注意:在网上有些版本的教程中,还说到这里要添加其它一些信息,主要是 master 数据库的信息,经我试验添加之后会导致 mysql 服务无法正常启动,可 能老版本的 mysql 需要这样子设置吧,我的版本是 5.5.28 修改完 my.cnf 配置文件之后,重启一下 mysql 服务 /etc/init.d/mysql restart 然后登陆从数据库 mysql -u root -proot 创建备份数据库 create database angogps; 在主从服务器上各自清空一下日志,也是同时用命令: 在主服务器上:mysql>flush master; 在从服务器上:mysql> flush slave 运行 stop slave;
然后执行 change master to master_host='192.168.1.201', master_user='lisi',master_password='skonbo998',master_port=3306, master_log_file='mysql-bin.000001', master_log_pos=107;成功之后执行 start slave;然后看一下连接状态 show slave status \G 如果出现: Slave_IO_Running:YesSlave_SQL_Running:Yes 那么说明没有问题了,就可以在 主机上面建库建表写测试数据,然后在从机上查询看有没有数据。一般是没有问 题了。 导入数据库 方法一: (1)选择数据库 mysql>use abc; (2)设置数据库编码 mysql>set names utf8; (3)导入数据(注意 sql 文件的路径) mysql>source /home/abc/abc.sql; 方法二: mysql -u 用户名 -p 数据库名 < 数据库名.sql #mysql -uabc_f -p abc < abc.sql
分享到:
收藏