MySQL大揭秘:深入探索Linux数据库管理

1 数据库的基本介绍

1.1 数据库的基本介绍

  1. 数据库的本质就是高级的excle表格。
  2. 常见的数据库有:MySQL、Oracle 、sqlserver
  3. mariadb就是MySQL的一种。
  4. 数据库常用的名词

1.字段 :表格中的表头,每一列就是一个字段
2.表 :表格
3.库 :存放表格的目录,许多个表格组成了库
4.查询 :对表格中的指定内容进行查看
5.数据库:许多的库组成大的数据库

1.2 数据库的安装

dnf install mariadb-server.x86_64 -y

1.3 数据库的启用

systemctl enable --now mariadb

MySQL大揭秘:深入探索Linux数据库管理_第1张图片

1.4 数据库基本信息

mariadb.service ##启动服务
3306 ##默认端口号
/etc/my.cnf.d/mariadb-server.cnf ##主配置文件
/var/lib/mysql ##数据目录,当需要重新安装mariadb时需要清理此目录或备份

MySQL大揭秘:深入探索Linux数据库管理_第2张图片

2 数据库的安全初始化

2.1 关闭数据库开放端口

/etc/my.cnf.d/mariadb-server.cnf # 在主配置文件中,增加下面的内容
skip-networking=1

MySQL大揭秘:深入探索Linux数据库管理_第3张图片
MySQL大揭秘:深入探索Linux数据库管理_第4张图片

2.2 执行安全初始化脚本

mysql_secure_installation

MySQL大揭秘:深入探索Linux数据库管理_第5张图片
MySQL大揭秘:深入探索Linux数据库管理_第6张图片

3 数据库的基本管理

3.1 增

  1. 新建数据库
CREATE DATABASE sxl;  # sxl是库名字

MySQL大揭秘:深入探索Linux数据库管理_第7张图片

  1. 创建表结构
CREATE TABLE sxl.linux ( # sxl是数据库,linux是sxl库中的表
username varchar(6) not null,
password varchar(30) not null
);

MySQL大揭秘:深入探索Linux数据库管理_第8张图片

  1. 在表中添加数据
INSERT INTO sxl.linux VALUES ('user1','123'),('user2','345'); # 按照表结构写数据

MySQL大揭秘:深入探索Linux数据库管理_第9张图片

3.2 删

  1. 删除符合条件的行
DELETE FROM linux1 WHERE username='user1';
  1. 删表
DROP TABLE linux1; 
  1. 删库
DROP DATABASE sxl; 

MySQL大揭秘:深入探索Linux数据库管理_第10张图片

3.3 改

  1. 更改数据库中的表名
ALTER TABLE linux RENAME linux1;

MySQL大揭秘:深入探索Linux数据库管理_第11张图片

  1. 在表中插入新的属性信息
ALTER TABLE linux1 ADD age varchar(4) AFTER username;

MySQL大揭秘:深入探索Linux数据库管理_第12张图片

  1. 更新表中的属性值
UPDATE linux1 SET age=18 WHERE username='user2'; # 更新符合条件的
UPDATE linux1 SET age=20; # 更新所有
  1. 丢弃某一字段
ALTER TABLE linux1 DROP age;

MySQL大揭秘:深入探索Linux数据库管理_第13张图片

  1. 丢弃某一字段
ALTER TABLE linux1 DROP age;

MySQL大揭秘:深入探索Linux数据库管理_第14张图片

3.4 查

  1. 查看有哪些数据库
SHOW DATABASES;
  1. 使用其中的数据库
USE sxl;
  1. 查看数据库中的表
SHOW TABLES;

MySQL大揭秘:深入探索Linux数据库管理_第15张图片

  1. 查询表中所有数据
SELECT * FROM linux;
  1. 查询指定字段
SELECT username FROM linux;
  1. 查询符合条件的数据
SELECT * FROM linux WHERE username='user2';

MySQL大揭秘:深入探索Linux数据库管理_第16张图片

4 数据密码管理

4.1 数据密码更改

mysqladmin -uroot -pwestos password sxlsxl

MySQL大揭秘:深入探索Linux数据库管理_第17张图片

4.2 数据库密码破解(忘记密码)

systemctl stop mariadb 
mysqld_safe --skip-grant-tables &
UPDATE mysql.user set Password=password('lee') WHERE User='root'; ##当未使用过mysladmin更改过
密码
UPDATE mysql.user set authentication_string=password('lee') WHERE User='root'; ##当使用过
mysladmin更改过密码
flush privileges;
ps aux | grep mysql
kill -9 mysql的所有进程
systemctl start mariadb
  1. 关掉数据库
systemctl stop mariadb 
  1. 跳过数据库安全认证
mysqld_safe --skip-grant-tables &

MySQL大揭秘:深入探索Linux数据库管理_第18张图片
MySQL大揭秘:深入探索Linux数据库管理_第19张图片

  1. 更新数据库密码
    MySQL大揭秘:深入探索Linux数据库管理_第20张图片

  2. 关闭所有mysql进程

ps aux | grep mysql
kill -9 mysql的所有进程

MySQL大揭秘:深入探索Linux数据库管理_第21张图片

  1. 重启服务
systemctl start mariadb

MySQL大揭秘:深入探索Linux数据库管理_第22张图片

5 用户授权

5.1 建立数据库用户

CREATE USER xin@localhost identified by '666';
SHOW GRANTS for xin@localhost; # 查看用户授权
SELECT User,Host FROM mysql.user; # 查看本地用户

MySQL大揭秘:深入探索Linux数据库管理_第23张图片

MySQL大揭秘:深入探索Linux数据库管理_第24张图片

5.2 用户授权

GRANT INSERT,SELECT ON sxl.* TO xin@localhost;
REVOKE INSERT ON sxl.* FROM xin@localhost;

MySQL大揭秘:深入探索Linux数据库管理_第25张图片
MySQL大揭秘:深入探索Linux数据库管理_第26张图片
MySQL大揭秘:深入探索Linux数据库管理_第27张图片

5.3 用户删除

DROP user xin@localhost;

MySQL大揭秘:深入探索Linux数据库管理_第28张图片

6 数据库备份

6.1 数据库备份方式

mysqldump -uroot -p123 --all-database # 备份所有数据库
mysqldump -uroot -p123 --all-database --no-data # 只备份数据库结构
mysqldump -uroot -p123 westos # 
mysqldump -uroot -p123 westos > /mnt/westos.sql # 将数据库备份到该路径

MySQL大揭秘:深入探索Linux数据库管理_第29张图片

6.2 恢复数据库备份

  1. 方式一
mysql -uroot -p123 -e "create database westos;" # 首先创建数据库
mysql -uroot -p123 westos < /mnt/westos.sql # 执行备份恢复操作

MySQL大揭秘:深入探索Linux数据库管理_第30张图片

  1. 方式二
vim /mnt/westos.sql # 在该文件中写入以下内容
CREATE DATABASE westos;
USE westos;
mysql -uroot -p123 < /mnt/westos.sql

MySQL大揭秘:深入探索Linux数据库管理_第31张图片
MySQL大揭秘:深入探索Linux数据库管理_第32张图片

7 数据库可视化使用

dnf install httpd php php-mysqlnd -y
systemctl enable --now httpd
systemctl stop firewalld 
cp phpMyAdmin-3.4.0-all-languages.tar.gz /var/www/html/
cd /var/www/html/
tar zxf phpMyAdmin-3.4.0-all-languages.tar.gz
mv phpMyAdmin-3.4.0-all-languages/ mysqladmin
cd mysqladmin
cp config.sample.inc.php config.inc.php
firefox http://192.168.0.12/mysqladmin

在这里插入图片描述
MySQL大揭秘:深入探索Linux数据库管理_第33张图片
MySQL大揭秘:深入探索Linux数据库管理_第34张图片

你可能感兴趣的:(mysql,数据库)