没有合适的资源?快使用搜索试试~ 我知道了~
Xtrabackup全备+binlog增备恢复整个数据库 江湖救急
需积分: 0 1 下载量 120 浏览量
2023-09-13
21:35:00
上传
评论
收藏 517KB PDF 举报
温馨提示
试读
12页
Xtrabackup全备+binlog增备恢复整个数据库 江湖救急
资源推荐
资源详情
资源评论
环境介绍:
操作系统:Centos 7.5
数据库版本:MySQL 5.7.22
我在本机搭了两个实例,一个3306,一个3307
搭建过程如下:生产环境也建议使用mysql二进制GA版本安装
[root@K8S-Node01 ~]# mkdir -p /opt/mysql [root@K8S-Node01 ~]# tar zxf mysql-5.7.22-linux-glibc2.12-
x86_64.tar.gz -C /opt/mysql/
做个软链接,方便后期数据库做升级
[root@K8S-Node01 ~]# ln -s /opt/mysql/mysql-5.7.22-linux-glibc2.12-x86_64/ /usr/local/mysql
检查是否有缺少的库文件,若有缺少,记得将其安装上:
可以发现libnuma.so.1文件没有,将其安装上:
[root@K8S-Node01 ~]# yum -y install numactl*
再次检查下,此时就没有缺少的库文件了
[root@K8S-Node01 ~]# ldd /usr/local/mysql/bin/mysqld
linux-vdso.so.1 => (0x00007ffe45dd9000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f63b53db000)
libaio.so.1 => /lib64/libaio.so.1 (0x00007f63b51d9000)
libnuma.so.1 => not found
libcrypt.so.1 => /lib64/libcrypt.so.1 (0x00007f63b4fa2000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007f63b4d9e000)
librt.so.1 => /lib64/librt.so.1 (0x00007f63b4b96000)
libstdc++.so.6 => /lib64/libstdc++.so.6 (0x00007f63b488f000)
libm.so.6 => /lib64/libm.so.6 (0x00007f63b458d000)
libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007f63b4377000)
libc.so.6 => /lib64/libc.so.6 (0x00007f63b3faa000)
/lib64/ld-linux-x86-64.so.2 (0x00007f63b55f7000)
libfreebl3.so => /lib64/libfreebl3.so (0x00007f63b3da7000)
[root@K8S-Node01 ~]# ldd /usr/local/mysql/bin/mysqld
linux-vdso.so.1 => (0x00007ffc348d3000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f4af3376000)
libaio.so.1 => /lib64/libaio.so.1 (0x00007f4af3174000)
libnuma.so.1 => /lib64/libnuma.so.1 (0x00007f4af2f68000)
libcrypt.so.1 => /lib64/libcrypt.so.1 (0x00007f4af2d31000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007f4af2b2d000)
librt.so.1 => /lib64/librt.so.1 (0x00007f4af2925000)
libstdc++.so.6 => /lib64/libstdc++.so.6 (0x00007f4af261e000)
libm.so.6 => /lib64/libm.so.6 (0x00007f4af231c000)
libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007f4af2106000)
[root@K8S-Node01 ~]# mkdir -p /data/mysql/mysql3306/{data,logs,tmp} [root@K8S-Node01 ~]# groupadd
mysql [root@K8S-Node01 ~]# useradd -s /sbin/nologin -g mysql -d /usr/local/mysql/ -NM mysql
#上传mysql配置文件到此目录:
[root@K8S-Node01 mysql3306]# pwd /data/mysql/mysql3306 [root@K8S-Node01 mysql3306]# ls data logs
my3306.cnf tmp [root@K8S-Node01 mysql3306]#
###授权
[root@K8S-Node01 ~]# chown -R mysql.mysql /usr/local/mysql/ [root@K8S-Node01 ~]# chown -R
mysql.mysql /data/mysql/
##初始化:
[root@K8S-Node01 ~]# /usr/local/mysql/bin/mysqld --defaults-file=/data/mysql/mysql3306/my3306.cnf --
initialize
初始化完成后,一定要检查错误日志中是否有报错信息,有,分析原因,没有,进行下一步:
[root@K8S-Node01 ~]# grep -i "error" /data/mysql/mysql3306/data/error.log
##导入mysql的环境变量:
[root@K8S-Node01 ~]# echo "export PATH=$PATH:/usr/local/mysql/bin" >> /etc/profile [root@K8S-Node01
~]# source !$
##启动3306实例:
[root@K8S-Node01 ~]# /usr/local/mysql/bin/mysqld --defaults-file=/data/mysql/mysql3306/my3306.cnf &
[1] 8832
###检查是否启动成功:
#从错误日志中获取初始密码,并登入到mysql实例进行更改密码:
[root@K8S-Node01 ~]# grep -i "password" /data/mysql/mysql3306/data/error.log |awk '{print $NF}'
o(,8ne9are.L
登入mysql3306实例:
因为我待会要在该机器上搭建mysql多实例,为了区分进入的是哪个实例,现在再该文件下添加如下:
[root@K8S-Node01 ~]# vim ~/.my.cnf [root@K8S-Node01 ~]# cat !$ [mysql] prompt="\u@\h:\p[\d]>"
##登入到mysql实例进入改密码:
若出现这种情况,就调用mysql客户端的绝对路径来登入:
libc.so.6 => /lib64/libc.so.6 (0x00007f4af1d39000)
/lib64/ld-linux-x86-64.so.2 (0x00007f4af3592000)
libfreebl3.so => /lib64/libfreebl3.so (0x00007f4af1b36000)
##
[root@K8S-Node01 ~]# /usr/local/mysql/bin/mysql -S /tmp/mysql3306.sock -p
##更改密码:
(unknown)@localhost:mysql3306.sock[(none)]>alter user user() identified by '1997330';
退出,可以试用新密码登入
现在搭建mysql3307实例:
[root@K8S-Node01 ~]# mkdir -p /data/mysql/mysql3307/{data,logs,tmp}
拷贝3306的配置文件到3307;
[root@K8S-Node01 ~]# cp /data/mysql/mysql3306/my3306.cnf /data/mysql/mysql3307/my3307.cnf
[root@K8S-Node01 ~]# sed -i 's/3306/3307/g' /data/mysql/mysql3307/my3307.cnf
##对3307实例进行授权,初始化: [root@K8S-Node01 ~]# chown -R mysql.mysql /data/mysql/mysql3307/
[root@K8S-Node01 ~]# /usr/local/mysql/bin/mysqld --defaults-file=/data/mysql/mysql3307/my3307.cnf --
initialize
##同理,检查错误日志有无报错:
[root@K8S-Node01 ~]# grep -i "error" /data/mysql/mysql3307/data/error.log
#启动mysql3307实例:
[root@K8S-Node01 ~]# /usr/local/mysql/bin/mysqld --defaults-file=/data/mysql/mysql3307/my3307.cnf &
##查看是否启动成功
发现是没问题的,现在登入到mysql3307实例修改密码:
[root@K8S-Node01 ~]# grep -i "password" /data/mysql/mysql3307/data/error.log|awk '{print $NF}'
*NK8EJ%Eh7%g
##进入mysql3307实例
[root@K8S-Node01 ~]# /usr/local/mysql/bin/mysql -S /tmp/mysql3307.sock -p
(unknown)@localhost:mysql3307.sock[(none)]>alter user user() identified by '1997330';
###到此为止,我在该台机器上安装了两个mysql实例,一个3306,一个3307
###到MySQL3306实例下创建测试库,测试表,
[root@K8S-Node01 ~]# mysql -S /tmp/mysql3306.sock -p
Enter password:
ERROR 1862 (HY000): Your password has expired. To log in you must change it using a client that
supports expired passwords
剩余11页未读,继续阅读
资源评论
CodeGolang
- 粉丝: 55
- 资源: 1088
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功