AnyShare - 备份 mariadb 数据库表
关键字
数据库、备份、表
适用产品
- AnyShare Enterprise 7.0.4.3及以上版本
- AnyShare Express 7.0.4.3及以上版本
目的
在修改数据库字段前,为了保证操作的安全性,需要先对数据库表进行备份,本文介绍如何备份数据库表。
解决方案
下图以备份 anyshare 库中的 t_conf 表为例,介绍两种备份表的方法。
方法一:
1.通过 SSH 登录到 AnyShare 节点,执行如下命令,找到 mariadb 数据库 pod,下图以 mariadb-0 为例。
kubectl get po -A -o wide |grep mariadb
.jpg)
2.执行如下命令,通过 kubectl 命令进入容器,并登录数据库。
kubectl exec -it mariadb-mariadb-0 -n resource -- /bin/bash
mysql -uroot -p
.jpg)
3.进入 anyshare 数据库,再创建一个备份表 t_conf_bak,然后将 t_conf 表中的数据插入到 t_conf_bak 表中。操作完成后查看备份表为t_conf_bak;
use anyshare;
create table t_conf_bak like t_conf;
insert into t_conf_bak select * from t_conf;
show tables;



方法二:
1.通过 SSH 登录到 AnyShare 节点,执行如下命令,找到 mariadb 数据库 pod,下图以 mariadb-0 为例。
kubectl get po -A -o wide |grep mariadb
.jpg)
2.执行如下命令,通过 kubectl 命令进入容器,无需登录数据库。
kubectl exec -it mariadb-mariadb-0 -n resource -- /bin/bash

3.使用 mysqldump 命令备份 anyshare 库中 t_conf 表到数据库目录 /var/lib/mysql 下,备份成功后在数据库目录下查看备份表为 bak_t_conf.bak。
mysqldump -h127.0.0.1 -P3306 -uroot -p anyshare t_conf > /var/lib/mysql/bak_t_conf.sql

更多信息
对于表数据较小的建议使用方法一、对于表数据较大的建议使用方法二。