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

相关推荐
炬火初现5 分钟前
redis-cpp-cpp如何使用lua脚本
数据库·redis·lua
hxung6 分钟前
Redis 数据类型详解
数据库·redis·缓存
oh,huoyuyan1 小时前
火语言RPA--Sqlite-导入数据表格
数据库·sqlite·rpa
伏游1 小时前
【BUG】生产环境死锁问题定位排查解决全过程
服务器·数据库·spring boot·后端·postgresql·bug
搬码红绿灯2 小时前
数据库——MySQL数字函数和子查询
数据库·mysql
侧耳倾听1112 小时前
使用内存数据库来为mapper层的接口编写单元测试
数据库·单元测试
ifanatic3 小时前
[每周一更]-(第138期):MySQL 子查询详解:原理、应用及优化方案
数据库·mysql
TDengine (老段)3 小时前
TDengine 中的日志系统
java·大数据·数据库·物联网·时序数据库·tdengine·iotdb
kfepiza4 小时前
Debian编译安装mysql8.0.41源码包 笔记250401
数据库·笔记·mysql·debian·database