目录
1. 数据库的介绍
1.1 什么是数据库
数据库(Database)是按照数据结构来组织、存储和管理数据的仓库。在windows中我们通常用表格来记录数据集合,方便查找。而数据库就是一个高级的表格软件。
1.2 常见的数据库
Mysql、Oracle、mongodb、Sqlserver、db2、sqlite......
1.3 Mysql
MySQL 是最流行的关系型数据库管理系统,在 WEB 应用方面 MySQL 是最好的 RDBMS(Relational Database Management System:关系数据库管理系统)应用软件之一。
1.4 mariadb
MariaDB数据库管理系统是MySQL的一个分支。
2. mariadb的安装
## 在安装之前首先配置好软件仓库,之前文章中有就不再重复
dnf search mariadb ## 寻找mariadb软件
dnf install mariadb-server.x86_64 -y ## 安装mariadb-server.x86_64软件
3. 软件基本信息
mariadb.service ## 启动服务
3306 ## 默认端口
/etc/my.cnf ## 主配置文件
/var/lib/mysql ## 数据目录
4. 数据库开启
systemctl enable --now mariadb
5. 数据库的安全初始化
5.1 关闭数据库开放端口
vim /etc/my.cnf
###
[mysqld]
skip-networking=1
###
systemctl restart mariadb
netstatus -antlupe | grep mysql ## 此命令查询不到端口,关闭成功
5.2 执行安全初始化脚本
mysql_secure_installation
执行mysql,默认是不需要密码的,但是执行完初始化以后需要密码
mysql -uroot -p
## -u指定登陆用户
## -p密码
## -p+密码会使密码直接裸漏,不安全
6. 数据库的基本管理
6.1 查看
SHOW DATABASES; ## 显示库名称
USE mysql; ## 进入mysql库
SHOW TABLES; ## 显示库中所有表
SELECT * FROM user; ## 查询所有数据
SELECT Host,User,Password FROM user; ## 查询指定字段
6.2 新建
CREATE DATABASE dsd; ## 新建库
CREATE TABLE linux(
username varchar(6) not null,
password varchar(30) not null
); ## 新建表
DESC linux; ## 显示表结构
INSERT INTO linux VALUES ('user','123') ## 插入数据
SELECT * FROM linux; ## 显示数据
新建库:
新建表及显示表结构::
插入数据:
显示数据:
6.3 更改
ALTER TABLE linux RENAME dsdlinux; ## 将表的名称由linux改为dsdlinux
ALTER TABLE linux ADD age varchar(4) AFTER password; ## 添加一个4字节大小的age属性在password后
ALTER TABLE linux DROP age; ## 删除age属性
UPDATE linux SET sex='g' WHERE username='user2'; ## 更新user2的sex属性为g
6.4 删除
DELETE from linux where username='user1';
DROP TABLE linux;
DROP DATABASE dsd;
7. 数据密码管理
7.1 数据密码更改
mysqladmin -uroot -pdsd password dsd2333
7.2 数据库密码破解
systemctl stop mariadb ## 关闭mariadb服务
mysqld_safe --skip-grant-tables & ## 启动数据库时跳过数据库的授权表
UPDATE mysql.user set Password=password('dsd') WHERE User='root'; ## 设置root用户mysql密码为dsd,其中password('dsd')是为了防止密码裸漏,进行加密处理.
flush privileges;
kill -9 mysql的所有进程
systemctl start mariadb
8. 用户授权
CREATE USER dsd2333@localhost identified by 'lee'; ## 创建用户dsd2333
SHOW GRANTS for dsd2333@localhost; ## 查看用户授权
REVOKE SELECT ON westos.* FROM lee@localhost; ## 删除授权
DROP user lee@localhost; ## 删除用户
建立用户:
查看用户授权:
删除授权:
删除用户:
9. 数据库的备份
mysqldump -uroot -pdsd --all-database ## 数据库的完全备份
mysqldump -uroot -pdsd --all-database --no-data ## 只备份表结构不备份数据
mysqldump -uroot -pdsd dsd ## 只备份dsd数据库
mysqldump -uroot -pdsd dsd> /mnt/dsd.sql ## 将dsd数据库备份信息保存在/mnt/dsd.sql文件中
mysql -uroot -pdsd -e "create database szy;" ## 创建数据库
mysql -uroot -pdsd szy < /mnt/szy.sql ## 将数据库备份到/mnt/dsd.sql中
10. phpmyadmin的安装
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
vim config.inc.php
$cfg['blowfish_secret'] = 'ba17c1ec07d65003';
firefox http://192.168.0.12/mysqladmin