一.数据库的基本概念
1.定义:
 数据库就是一种按数据结构来组织,存储和管理数据的仓库,其中包含数据挖掘,大数据信息的推送
 2.数据库的种类
 sqlserver-----微软公司
 mysql---------sun公司
 oracle--------oracle
 db2------------idm
 3.数据库用到的语言:sql
企业用到的语言:oracle(闭源,要收费,但是性能优越,一般核心数据中心用到)
 mysql------版本:mariadb (完全兼容,操作简便,代码公用)
 数据库的集合就称为数据库软件。
二.数据库的基本信息
| 数据库内部:squl语句;大小写区均可,但是一般用大写,大写是通用的,数据库内部对应有目录,目录里面有表。 | 
1.数据库软件的安装及相关配置
 准备工作:准备一个系统镜像并且配置yum源
- 安装数据库的软件
 
yum install mariadb-server.x86_64  -y    ##安装数据库软件systemctl start mariadbmysql       ##进入数据库
 

 
 
- 安全初始化
注:默认情况下,数据库的网络接口是打开的,为了安全需要要关闭此接口 
vim  /etc/my.cnf   ##编辑配置数据库文件
编辑内容如下:skip-networking=1    ##关闭网络接口
systemctl restart  mariadb  
netstat -antlupe | grep mysql   ##查看数据库登录接口
 

 
 默认登录接口对所有人都是开放的,当设置万配置文件之后,发现就没有数据库的接口
- 设定登录权限
 
mysql_secure_installation   ##设定登录权限
 
内容及其相应解释:
Enter current password for root (enter for    none): 		##数据库原始密码(默认没有直接回车)
Set root password? [Y/n] 	##是否要设定数据库超级用户密码
New password: 			##输入要设定的超级用户密码
Re-enter new password: 		##重复输入
Remove anonymous users? [Y/n] 	##是否删除匿名用户访问权限
Disallow root login remotely? [Y/n] 		##是否禁止超级用户通过远程登陆
Remove test database and access to it? [Y/n] 	##刷新数据库
 

 
 注:里面所有的内容都选y,可以直接一直回车,只需中途输超级用户密码俩次就行
三.数据库的基本sql语句操作
1.登录
mysql -uroot -pwestos		###-u表示指定登陆用户,-p 表示指定此用户密码
 

 注:登陆的时候-p后面不能直接加密码,二是-p加回车输入密码,以保证数据库的安全性
 2.数据库的查询
 彼此的库都是平行的不存在上下级关系
MariaDB [(none)]> SHOW DATABASES;   ##显示数据库
MariaDB [(none)]> USE mysql     ##进入数据库
MariaDB [mysql]> SHOW TABLES;   ##显示库的table
MariaDB [mysql]> DESC user;     ##查看user表的结构
MariaDB [mysql]> SELECT Host,User  FROM user;  ##查看表的具体信息
 

 
 
 
 
 3.数据库及其表的建立
CREATE DATABASE westos;   ##建立westos数据库
CREATE TABLE linux  )      ##建立以linux为格式的表
-> usrname varchar(10) not null,-> password varchar(50) not null-> );
DESC linux   ##查看创建该表的结构
INSERT INTO linux VALUES ('zll','123');
INSERT INTO linux VALUES ('zll1','westos');   ##给该中表中添加内容
SELECT * FROM linux;    ##查看表中的内容
 
-  
创建目录:

 -  
在该数据库下创建表

 -  
查看所创建的表的结构

 -  
给创建的表添加内容

注:建立的数据库名称设定完就不会更改,否则可能会在数据的查询使用中出现问题,稳定性很低,生产环境中基本不用.
4.更新数据库信息 
MariaDB [westos]> ALTER TABLE linux ADD class varchar(20) AFTER username;     ##添加class在username的后面
MariaDB [westos]> UPDATE linux SET class='linux';  ##更新班级为linux
MariaDB [westos]> UPDATE linux SET class='java' WHERE usrname='zll'     ##更改zll的班级为java
 

 
 
 注:更改信息不能放在表的最前面。如果放在最前面查询的时候是错乱的,默认的第一个字段是基准字段,如果要改的话可以在配置文件中修改
 5.数据库的备份
[root@dns mysql]# mysqldump -uroot -p --all-database  ##查看数据库所有内容,为脚本模式
[root@dns mysql]# mysqldump -uroot -p westos      ##查看westos数据库的脚本文件
 

 备份:
[root@dns mysql]# mysqldump -uroot -p westos > /mnt/westos.sql     ##将westos数据库备份再/mnt/westos.sql
 

 6.数据库的删除
MariaDB [westos]> DROP TABLE westos.linux;   ##删除表,但是数据库还在
MariaDB [westos]> DROP DATABASE westos;   ##删除数据库 

 westos.linux指westos数据库下的表linux
MariaDB [(none)]> DELETE FROM westos.linux WHERE username='zll';   ##删除表中的zll
 

 7.数据库的恢复
 法一:
[root@dns mysql]# mysql -uroot -p -e "CREATE DATABASE westos;";  ##创建数据库
root@dns mysql]# mysql -uroot -pwestos -e "SHOW DATABASES;"     ##查看数据库
mysql -uroot -p westos < /mnt/westos.sql  ##备份的数据库文件恢复
 

 
 
 法二:
[root@dns mysql]# vim /mnt/westos.sql
编辑内容为:21 CREATE DATABASE westos;22 USE westos;
[root@dns mysql]# mysql -uroot -pwestos < /mnt/westos.sql
 

 
 
 8.用户授权
MariaDB [(none)]> SELECT User FROM mysql.user; ##查看mysql用户
MariaDB [(none)]> CREATE USER zll@localhost identified by 'westos';    ##创建用户
 

 验证:
 
9.修改用户权限
MariaDB [(none)]> SHOW GRANTS FOR zll@localhost    ##查看用户权限
 

- insert 权限的添加
注:添加权限都是在超级管理用户下操作 
GRANT INSERT ON westos.* TO zll@localhost;     ##给用户添加insert权限
 

 验证:
 
 
 发现没有select权限
- select权限的添加
 
GRANT SELECT ON westos.* TO zll@localhost;
 

 验证:
 
 10.用户权限的删除
REVOKE SELECT ON westos.* FROM zll@localhost;REVOKE INSERT ON westos.* FROM zll@localhost; 

 
 验证:
 
 发现即不能浏览也不能插入。
 11.超级用户密码修改
- 超级用户密码的修改
 
mysqladmin -uroot -pwestos password redhat
 

- 当忘记超级用户密码;
 
systemctl  stop mariadb  ##关闭服务
mysqld_safe --skip-grant-tables &			##开启mysql登陆接口并忽略授权表
mysql							##直接不用密码可以登陆
update mysql.user set Password=password('westos') where User='root';	##更新超级用户密码信息
ps aux | grep mysql					##过滤mysql的所有进程并结束这些进程
kill -9 mysqlpid
systemctl start mariadb					##重新开启mysql
mysql -uroot -p123					##登陆测试
 

 
 
 
 
四.数据库图形管理
安装phpmyadmin数据库图形管理
 下载phpMyAdmin-3.4.0-all-languages
 
yum install php php-mysql httpd -y
systemctl start httpd
 


tar jxf phpMyAdmin-3.4.0-all-languages -C /var/www/html/
[root@dns-server html]# cd mysqladmin/
[root@dns-server mysqladmin]# vim README ##可以看到安装手册
 

 
cp config.sample.inc.php config.inc.php  ##复制模板
vim config.inc.php   ##编辑生成的文件
 

 文件编辑内容:
 
 测试:
 访问
 http://172.25.254.102/mysqladmin
 
 会进入安装界面
 输入超级用户密码即可进入图形界面
 注:可以在里面家里数据库和表格与用命令建立的数据库及表格相同。
 验证如下:
- 用root身份登录数据库

 - 创建数据库

 - 在数据库中创建表格

 - 在表中添加属性

 - 在表格中插入内容

可以看到生成表格的代码

检测:
用命令登入数据库查看
新建的库

新建的表格

 















