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连接工具进行连接

相关推荐
vvvae12343 小时前
分布式数据库
数据库
雪域迷影4 小时前
PostgreSQL Docker Error – 5432: 地址已被占用
数据库·docker·postgresql
bug菌¹4 小时前
滚雪球学Oracle[4.2讲]:PL/SQL基础语法
数据库·oracle
逸巽散人5 小时前
SQL基础教程
数据库·sql·oracle
月空MoonSky5 小时前
Oracle中TRUNC()函数详解
数据库·sql·oracle
momo小菜pa5 小时前
【MySQL 06】表的增删查改
数据库·mysql
向上的车轮6 小时前
Django学习笔记二:数据库操作详解
数据库·django
编程老船长6 小时前
第26章 Java操作Mongodb实现数据持久化
数据库·后端·mongodb
全栈师7 小时前
SQL Server中关于个性化需求批量删除表的做法
数据库·oracle
Data 3177 小时前
Hive数仓操作(十七)
大数据·数据库·数据仓库·hive·hadoop