CentOS7安装MariaDB数据库,主从搭建

mac2026-02-08  1

一、删除之前的MySQL/MariaDB

rpm -qa | grep MariaDB rpm -e --nodeps MariaDB-* rpm -qa | grep mysql yum remove mysql mysql-server mysql-libs compat-mysql51 #如果删不掉,就一个一个删

二、两台机器分别安装MariaDB

机器:192.168.174.129    192.168.174.135

vim /etc/yum.repos.d/MariaDB.repo

内容为(修改MariaDB源,及版本):

版本可选,参考网址:网址

[mariadb] name = MariaDB baseurl = https://mirrors.ustc.edu.cn/mariadb/yum/10.1/centos7-amd64/ gpgkey=https://mirrors.ustc.edu.cn/mariadb/yum/RPM-GPG-KEY-MariaDB gpgcheck=1

安装Mariadb之前,你可以先导入GPG key

rpm --import https://yum.mariadb.org/RPM-GPG-KEY-MariaDB

三、运行命令安装

yum -y install MariaDB-server MariaDB-client

四、启动

systemctl start mariadb #启动服务 systemctl enable mariadb #设置开机启动 systemctl restart mariadb #重新启动 systemctl stop mariadb.service #停止MariaDB

五、登录数据库

mysql -uroot -p #无密码,直接回车

六、进行MariaDB的相关简单配置

mysql_secure_installation Enter current password for root (enter for none):【回车】 Set root password? [Y/n]【y】 New password:【填写密码】 Re-enter new password:【再次输入密码】 Remove anonymous users? [Y/n]【是否删除匿名用户,回车】 Disallow root login remotely? [Y/n]【是否禁止root远程登录,回车(后面授权配置)】 Remove test database and access to it? [Y/n]【是否删除test数据库,回车】 Reload privilege tables now? [Y/n]【是否重新加载权限表,回车】

七、始化MariaDB完成,直接登录。

mysql -uroot -p密码

八、配置MariaDB的字符集

vim /etc/my.cnf.d/server.cnf #在[mysqld]下添加 init_connect='SET collation_connection = utf8_unicode_ci' init_connect='SET NAMES utf8' character-set-server=utf8 collation-server=utf8_unicode_ci skip-character-set-client-handshake

九、重启Mariadb,查看MariaDB字符集

systemctl restart mariadb mysql -uroot -p密码 show variables like "%character%";show variables like "%collation%";

十、设置权限

rant all privileges on *.* to root@'%' identified by 'password'; 授予部分权限只需把all privileges改为select,insert,update,delete,create,drop,index,alter,grant,references,reload,shutdown,process,file其中一部分即可。

主从搭建

注意:提前关闭两台机器的防火墙,或者开启特定的端口。

一、配置主服务器配置文件

vim /etc/my.cnf.d/server.cnf #内容如下: log-bin=mysql-bin binlog-ignore-db=information_schema binlog-ignore-db=mysql binlog-ignore-db=performance_schema server-id=1

二、配置从服务器配置文件

vim /etc/my.cnf.d/server.cnf #内容如下 relay-log=/usr/local/mysql/relay-bin read_only=1 server-id=2

三、在主服务器上创建复制用户

GRANT REPLICATION SLAVE,REPLICATION CLIENT ON *.* TO 'nifujia'@'192.168.174.135' IDENTIFIED BY 'mysql'; flush privileges;

四、  查看主服务二进制日志状态,以便在从服务器选择复制开始位置

show master status; #File mysql-bin.000002 #Position 327

五、从服务器登录,从服务器上访问主服务器

CHANGE MASTER TO MASTER_HOST='192.168.174.129',MASTER_PORT=3306,MASTER_USER='nifujia',MASTER_PASSWORD='mysql',MASTER_LOG_FILE='mysql-bin.000002',MASTER_LOG_POS=327;

六、从服务器启动复制,查看从服务器状态

start slave; show slave status\G; #看到Slave_IO_Running: Yes Slave_SQL_Running: Yes 表示成功

七、验证

主服务上创建表,添加数据,从服务器同步,那么表示成功

八、备注

如果在从服务器上访问主服务器出现问题,可以用stop slave、reset slave命令重新配置。

最新回复(0)