shell脚本备份数据库

首先是在本地windows环境下尝试备份数据库

打开mysql的bin目录,然后在地址栏cmd,进入cmd界面,输入mysqldump命令,-u输入用户名,-p输入密码 还有数据库名称,以及后面要保存到的位置

java 复制代码
mysqldump -uroot -p test > /backup/mysqldump/test.db

卸载掉CentOS自带数据库:

检查centos是否自带数据库:

java 复制代码
rpm -qa | grep mariadb

卸载centos下已安装数据库:

java 复制代码
rpm -e --nodeps mariadb-libs

准备下载安装包:

进入指定目录:

java 复制代码
cd /usr/local/src

下载mysql8

java 复制代码
wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.20-linux-glibc2.12-x86_64.tar.xz

之后通过xz和tar命令解压压缩文件:

java 复制代码
xz -d mysql-8.0.20-linux-glibc2.12-x86_64.tar.xz
java 复制代码
tar xvf mysql-8.0.20-linux-glibc2.12-x86_64.tar

将/usr/local/src下的mysql-8.0.20-linux-glibc2.12-x86_64文件夹内容移动到/usr/local/mysql下,此目录用于存放mysql:

java 复制代码
mkdir /usr/local/mysql
java 复制代码
mv /usr/local/src/mysql-8.0.20-linux-glibc2.12-x86_64/* /usr/local/mysql
java 复制代码
cd /usr/local/mysql

创建用户组和密码,进行授权:

java 复制代码
groupadd mysql
java 复制代码
useradd -g mysql mysql
java 复制代码
chown -R mysql.mysql /usr/local/mysql

编写MySQL的配置文件:

编辑配置文件:

java 复制代码
vim /etc/my.cnf

按i进入修改模式,将下面内容进行复制,按esc,:wq进行 保存退出

进入到bin目录下,进行初始化信息:

java 复制代码
cd bin
java 复制代码
./mysqld --initialize

初始化信息之后会有数据库临时密码,在下图红框标的部分

添加mysqld服务到系统:

java 复制代码
cd ..
java 复制代码
cp -a ./support-files/mysql.server /etc/init.d/mysql

将mysql.server复制到该路径,用于将其作为服务启动脚本,用来管理mysql的运行状态

设置MySQL服务器作为系统服务并自启动

java 复制代码
chmod +x /etc/init.d/mysql

为文件提供可执行权限,运行该脚本启动MYSQL服务

java 复制代码
chkconfig --add mysql

将MySQL服务器添加到系统的服务列表中

启动MySQL:

java 复制代码
service mysql start

创建软链接,将mysql添加到系统服务中:

java 复制代码
ln -s /usr/local/mysql/bin/mysql /usr/bin

登录mysql(密码在上面的临时密码):

java 复制代码
mysql -uroot -p

更改root用户密码:

java 复制代码
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的密码';

刷新授权表:

java 复制代码
flush privileges;

更改root连接权限,设置root用户可以从任意主机连接到服务器:

java 复制代码
use mysql;
java 复制代码
update user set host='%' where user = 'root';
java 复制代码
flush privileges;

完成,退出即可,可以用ssh连接工具进行连接

相关推荐
松涛和鸣24 分钟前
DAY42 SQLite3 : Dictionary Import and Data Query Implementation with C Language
linux·c语言·数据库·单片机·网络协议·sqlite
ptc学习者40 分钟前
mysql 主从配置
数据库
飞天小蜈蚣1 小时前
django的模板渲染、for循环标签、继承模板
数据库·python·django
杨云龙UP1 小时前
SQL Server 2016通过SSMS(SQL Server Management Studio)图形界面完成创建用户和授权_20251230
运维·服务器·数据库
源代码•宸1 小时前
goframe框架签到系统项目开发(每日签到添加积分和积分记录、获取当月最大连续签到天数、发放连续签到奖励积分、实现签到日历详情接口)
数据库·经验分享·redis·中间件·golang·dao·goframe
YMatrix 官方技术社区2 小时前
时序 + 分析:YMatrix “智慧工厂“数据平台双方案详解
数据库·物联网·时序数据库·智能制造·数智工厂·ymatrix
熊文豪2 小时前
电科金仓数据库KingbaseES V9R2C13元数据处理详解
数据库·金仓数据库·电科金仓·kes
小画家~2 小时前
第四十三:redis 查找所有KEY应用方法
数据库·redis·bootstrap
攻心的子乐2 小时前
redis 使用Pipelined 管道命令批量操作 减少网络操作次数
数据库·redis·缓存
QT 小鲜肉2 小时前
【Linux命令大全】001.文件管理之slocate命令(实操篇)
linux·运维·服务器·数据库·笔记