作业要求
1、openEuler 二进制方式安装MySQL 8.0.x。
二、备份数据库
3.备份数据库school到/backup目录
4.备份MySQL数据库为带删除表的格式,能够让该备份覆盖已有数据库而不需要手动删除原有数据库
5.直接将MySQL数据库压缩备份
完成情况
1、openEuler 二进制方式安装MySQL 8.0.x。
#获取软件包
[root@localhost ~]# wget -c https://mirrors.aliyun.com/mysql/MySQL-8.0/mysql-8.0.28-linux-glibc2.12-x86_64.tar.xz
#安装
[root@localhost ~]# groupadd -g 27 -r mysql
[root@localhost ~]#useradd -u 27 -g 27 -c 'MySQL Server' -r -s /sbin/nologin mysql
[root@localhost ~]# tar xf mysql-8.0.28-linux-glibc2ar.xz -C /usr/local/
[root@localhost ~]# ln -sv /usr/local/mysql-8.0.28-l12-x86_64/ /usr/local/mysql
'/usr/local/mysql' -> '/usr/local/mysql-8.0.28-linux86_64/'
[root@localhost ~]# cd /usr/local/mysql
[root@localhost mysql]# chown mysql:mysql mysql-file
[root@localhost mysql]# chmod 750 mysql-files
[root@localhost mysql]# bin/mysqld --initialize --user=mysql
[root@localhost mysql]# bin/mysql_ssl_rsa_setup
[root@localhost mysql]# bin/mysqld_safe --user=mysql &
获得初始密码
配置环境
# 配置环境变量
[root@localhost mysql]# vi /etc/profile.d/mysql.sh
export PATH=$PATH:/usr/local/mysql/bin/[root@localhost mysql]# source /etc/profile.d/mysql.sh
[root@localhost mysql]# yum install ncurses-compat-libs# 登录并修改密码
[root@localhost mysql]# mysql -uroot -p'nnr765aXFa)p'
mysql> alter user root@localhost identified by 'MySQL@123';# 提供服务脚本
停止服务:[root@localhost mysql]# mysqladmin -uroot -p'MySQL@123' shutdown
[root@localhost mysql]# cp support-files/mysql.server /etc/init.d/mysqld
[root@localhost mysql]# chkconfig --add mysqld# 提供配置文件
[root@localhost ~]# scp /etc/my.cnf 192.168.144.136:/etc/
[root@localhost ~]# scp -r /etc/my.cnf.d/ 192.168.144.136:/etc/# vi /etc/my.cnf
basedir=/usr/local/mysql/
datadir=/usr/local/mysql/data/
socket=/tmp/mysql.socklog-error=/usr/local/mysql/data/mysqld.log
pid-file=/usr/local/mysql/data/mysqld.pid
第二题
mysql> create database school;
mysql> use school
Database changed
mysql> CREATE TABLE student (
-> id INT(10) NOT NULL UNIQUE PRIMARY KEY,
-> name VARCHAR(20) NOT NULL,
-> sex VARCHAR(4),
-> birth YEAR,
-> department VARCHAR(20),
-> address VARCHAR(50)
-> );
Query OK, 0 rows affected, 1 warning (0.01 sec)
mysql> CREATE TABLE score (
-> id INT(10) NOT NULL UNIQUE PRIMARY KEY AUTO_INCREMENT ,
-> stu_id INT(10) NOT NULL ,
-> c_name VARCHAR(20) ,
-> grade INT(10)
-> );
Query OK, 0 rows affected, 3 warnings (0.02 sec)
mysql> INSERT INTO student VALUES( 901,'张老大', ' 男',1985,'计算机系', '北京市海淀区');
®机系', '湖南省衡阳市');Query OK, 1 row affected (0.00 sec)
mysql> INSERT INTO student VALUES( 902,'张老二', ' 男',1986,'中文系', '北京市昌平区');
Query OK, 1 row affected (0.01 sec)
mysql> INSERT INTO student VALUES( 903,'张三', '女',1990,'中文系', '湖南省永州市');
Query OK, 1 row affected (0.00 sec)
mysql> INSERT INTO student VALUES( 904,'李四', '男',1990,'英语系', '辽宁省阜新市');
Query OK, 1 row affected (0.00 sec)
mysql> INSERT INTO student VALUES( 905,'王五', '女',1991,'英语系', '福建省厦门市');
Query OK, 1 row affected (0.01 sec)
mysql> INSERT INTO student VALUES( 906,'王六', '男',1988,'计算机系', '湖南省衡阳市');
Query OK, 1 row affected (0.00 sec)
mysql> INSERT INTO score VALUES(NULL,901, '计算机',98);
RT INTO score VALUES(NULL,904, '计算机',70);
INSERT INTO score VALUES(NULL,904, '英语',92);
INSERT INTO score VALUES(NULL,905, '英语',94);
INSERT INTO score VALUES(NULL,906, '计算机',90);
INSERT INTO score VALUES(NULL,906, '英语',85);Query OK, 1 row affected (0.00 sec)
mysql> INSERT INTO score VALUES(NULL,901, '英语', 80);
Query OK, 1 row affected (0.01 sec)
mysql> INSERT INTO score VALUES(NULL,902, '计算机',65);
Query OK, 1 row affected (0.00 sec)
mysql> INSERT INTO score VALUES(NULL,902, '中文',88);
Query OK, 1 row affected (0.00 sec)
mysql> INSERT INTO score VALUES(NULL,903, '中文',95);
Query OK, 1 row affected (0.00 sec)
mysql> INSERT INTO score VALUES(NULL,904, '计算机',70);
Query OK, 1 row affected (0.01 sec)
mysql> INSERT INTO score VALUES(NULL,904, '英语',92);
Query OK, 1 row affected (0.00 sec)
mysql> INSERT INTO score VALUES(NULL,905, '英语',94);
Query OK, 1 row affected (0.00 sec)
mysql> INSERT INTO score VALUES(NULL,906, '计算机',90);
Query OK, 1 row affected (0.01 sec)
mysql> INSERT INTO score VALUES(NULL,906, '英语',85);
Query OK, 1 row affected (0.00 sec)
2.备份数据库school到/backup目录
[root@localhost ~]# mkdir /backup
[root@localhost ~]# cd /backup
[root@localhost backup]# mysqldump --opt -B -uroot -p school > school.sql
3.备份MySQL数据库为带删除表的格式,能够让该备份覆盖已有数据库而不需要手动删除原有数据库
[root@localhost backup]# mysqldump -u root -p -B school --set-gtid-purged=OFF > /backup/school_`date +%F`.sql
4.直接将MySQL数据库压缩备份
[root@localhost backup]# mysqldump -u root -p -B -A --set-gtid-purged=OFF | gzip > /backup/totle_`date +%F`.sql.gz