Linux服务器主从mysql数据库配置方法

网友投稿 856 2023-03-20

本站部分文章、图片属于网络上可搜索到的公开信息,均用于学习和交流用途,不能代表睿象云的观点、立场或意见。我们接受网民的监督,如发现任何违法内容或侵犯了您的权益,请第一时间联系小编邮箱jiasou666@gmail.com 处理。

Linux服务器主从mysql数据库配置方法

1、安装cmake

[cce]cd /home/src

tar -xzvf cmake-2.8.8.tar.gz

cd cmake-2.8.8

./configure && make && make install[/cce]

2、安装

[cce]yum install ncurses-devel bison \\安装mysql需要的两个库

useradd mysql -s /sbin/nologin

mkdir /usr/local/mysql \\建立mysql安装目录

mkdir /home/mysql/data \\建立mysql数据存放目录

chown mysql:mysql /home/mysql/data -R

tar -xzvf mysql-5.5.27.tar.gz

cd mysql-5.5.27

cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=home/mysql/data -DSYSCONFDIR=/etc \\配置

make \\编译

make install \\安装

cd /usr/local/mysql

cp ./support-files/my-huge.cnf /etc/my.cnf

vi /etc/my.cnf \\编辑配置文件,在 [mysqld] 部分增加下面一行

datadir = /home/mysql/data \\添加MySQL数据库路径

./scripts/mysql_install_db --user=mysql \\生成mysql系统数据库

cp ./support-files/mysql.server /etc/rc.d/init.d/mysqld \\把Mysql加入系统启动

chmod 755 /etc/init.d/mysqld \\增加执行权限

chkconfig mysqld on \\加入开机启动

vim /etc/rc.d/init.d/mysqld \\编辑

basedir = /usr/local/mysql \\MySQL程序安装路径

datadir = /home/mysql/data \\MySQl数据库存放目录

service mysqld start \\启动

vi /etc/profile \\把mysql服务加入系统环境变量:在最后添加下面这一行

export PATH=$PATH:/usr/local/mysql/bin

执行 source /etc/profile \\让添加的变量生效

下面这两行把myslq的库文件链接到系统默认的位置,这样你在编译类似PHP等软件时可以不用指定mysql的库文件地址。

ln -s /usr/local/mysql/lib/mysql /usr/lib/mysql   \\如果是64位系统,则为/usr/lib64/mysql 默认已有,不必有此操作;

ln -s /usr/local/mysql/include/mysql /usr/include/mysql

/usr/local/mysql/bin/mysqladmin -uroot password "123456" \\修改密码

service mysqld restart \\重启服务

到此,mysql安装完成!

最好删除mysql的匿名用户

use mysql -------  delete from user where passwd=''      \\删除前请先确认已经给root用户设置了密码!!

配置主从库一定要确保server-id 是唯一的,id数可取1-65536之间的任意数字

配置前先从slave做连接主库测试  mysql -h *.*.*.* -u dbadmin –p -P master-port[/cce]

3、主库配置

[cce]vim /etc/my.cnf

更改port 为3307;

添加:

log-bin=mysql-bin

binlog_format=mixed

server-id       = 1         \\主库ID,在此主从关系链中ID不可有重复;

binlog-do-db=web            \\需要更新的数据库

binlog-ignore-db=mysql      \\忽略更新的数据库

sync_binlog=1

重启mysql服务;

mysql -uroot -p登录之后  master start; \\启动master

查看master状态  show master status \G; 记下File: mysql-bin.000009        Position: 107这两个值;

grant all on *.* to root@slaveIP identified by ‘pass’; \\给从库授权,以便从库更新[/cce]

4、从库配置

[cce]先测试从库是否有权限连接主库;

mysql -uroot -hmasterIP -p -P3307   \\如果登录正常再进行以下步骤,否则检查问题  可考虑网络问题、授权权限问题等;

vim /etc/my.cnf

添加:

log-bin=mysql-bin

binlog_format=mixed

server-id       = 2           \\从库ID号,确认是唯一的

replicate-do-db = web         \\需要更新的数据库;

replicate-ignore-db     = mysql  \\忽略更新的数据库;

重启mysqld服务;

mysql -uroot -p登录后  执行:CHANGE MASTER TO MASTER_HOST='192.168.70.12',MASTER_USER='root',MASTER_PASSWORD='123456',MASTER_PORT=3307,MASTER_LOG_FILE='mysql-bin.000009',MASTER_LOG_POS=107,MASTER_CONNECT_RETRY=60;  \\log_file为master的file值,log_pos为master Position值;

slave start;  \\启动slave

show slave status \G;    \\查看slave状态;

至此,主从库配置问题解决;

master to master配置 同主从配置一样,它们互为主从;[/cce]

上一篇:从12306说起 如何构建高并发高性能网站
下一篇:蓝屏代码0x0000007b的解决方法
相关文章

 发表评论

暂时没有评论,来抢沙发吧~