部署Mysql-8.0版本安装+主从部署

需要卸载Mariadb

rpm -qa|grep mariadb

yum -y remove mariadb-libs-5.5.56-2.el7.x86_64

rpm -qa|grep mariadb

安装依赖
yum install -y perl net-tools libaio

1.关闭防火墙

systemctl stop firewalld  #临时关闭

systemctl disable firewalld #永久关闭

setenforce 0 临时关闭SELinux

永久关闭SELinux   # 可选操作

vim /etc/selinux/config

SELINUX=enforcing #修改为"SELINUX=disabled"

修改完需重启

reboot

 

2.拉取MySQL包

官网地址:

https://downloads.mysql.com/archives/community/

 我这里下载的8.0.27版本 64位

wget下载

 wget https://downloads.mysql.com/archives/get/p/23/file/mysql-8.0.27-linux-glibc2.12-x86_64.tar.xz

3.解压安装

解压到 /usr/local/下

tar -xvf mysql-8.0.27-linux-glibc2.12-x86_64.tar.xz -C /usr/local/

解压后进入目录修改名字为 mysql

cd /usr/local

mv mysql-8.0.27-linux-glibc2.12-x86_64/ mysql

4.创建用户及权限

创建mysql用户和用户组:

groupadd mysql

useradd -g mysql mysql

将mysql目录的权限授给mysql用户和mysql组

chown -R mysql:mysql /usr/local/mysql

5.创建MySQL数据存目录

cd /usr/local/mysql/

mkdir data

6.修改配置文件

vim /etc/my.cnf

[client]
# 设置mysql客户端连接服务端时默认使用的端口
port=3306
default-character-set=utf8
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
socket=/var/lib/mysql/mysql.sock
[mysqld]
skip-name-resolve
# 设置3306端口
port = 3306
socket=/var/lib/mysql/mysql.sock
# 设置mysql的安装目录
basedir=/usr/local/mysql
# 设置mysql数据库的数据的存放⽬录
datadir=/usr/local/mysql/data
# 允许最大连接数
max_connections=200
# 允许连接失败的次数。这是为了防止有人从该主机试图攻击数据库系统
max_connect_errors=10
# 服务端使用的字符集默认为8比特编码的latin1字符集,修改为utf8
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 表名存储为给定的大小和比较是区分大小写的 
lower_case_table_names=0

同时使用如下命令创建/var/lib/mysql 目录,并修改权限:

mkdir /var/lib/mysql

chmod 777 /var/lib/mysql

7.初始化Mysql

cd /usr/local/mysql

执行初始化命令:

./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

初始化后记得保存初始化密码

 自启动:

cp ./support-files/mysql.server /etc/init.d/mysqld

修改添加 /etc/init.d/mysqld 修改其basedir 和datadir

vim /etc/init.d/mysqld

basedir=/usr/local/mysql
datadir=/usr/local/mysql/data

 设置MYSQL系统服务并开启自启
首先增加mysqld 服务控制脚本执行权限:

chmod +x /etc/init.d/mysqld

同时将mysqld 服务加入到系统服务:

chkconfig --add mysqld

检查mysqld 服务是否已经生效即可:

chkconfig --list mysqld

可能会用到的一个软连接 如果启动没问题就不需要

ln -s /usr/local/mysql/bin/mysql /usr/bin/

环境变量
将MYSQL 的BIN 目录加入PATH 环境变量
这样方便以后在任意目录上都可以使用mysql 提供的命令。
编辑 ~/.bash_profile 文件。

vim ~/.bash_profile

//在文件末尾处追加如下信息
export PATH=$PATH:/usr/local/mysql/bin

//最后执行如下命令使环境变量生效
source ~/.bash_profile

 8.启动

启动测试

service mysqld start

 9.修改mysql密码

进入mysql

 进入后输入命令:

ALTER USER 'root'@'localhost' IDENTIFIED BY '*********';

flush privileges;

-- 设置root用户远程登录
mysql> use mysql;
mysql> update user set user.Host='%' where user.User='root';
mysql> flush privileges;

 mysql-8.0部署完成!

主从部署:

首先呢根据需求配置,确定master和slave,还有就是机器的数量

确定好之后,我们先在master端进行操作

先去改配置文件  (/etc/my.cnf)

master:

log-bin=mysql-bin
server-id=1

slave:

server-id=2

1. 清理缓存

reset slave;

2.查看节点信息

show master status\G

 

 3·创建用户授权

CREATE USER 'slave'@'%' IDENTIFIED BY 'grx991202@';

alter user 'slave'@'%' identified with mysql_native_password by 'grx991202@';

grant all privileges on *.* to 'slave'@'%' with grant option;

 flush privileges ;

slave操作

1.执行

\e
change master to
master_host='192.168.92.120',
master_user='slave',
master_port=3306,
master_password='grx991202@',
master_log_file='binlog.000020',
master_log_pos=1148;

wq保存出来后记得还有个 ; 

2·. 启动slave,查看状态

start slave ;

show slave status\G

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值