数据库

数据库是IP行业的重中之重
1.定义:高级的excel表格软件
2.知名的数据库 oracle(不是开源的) mysql(开源) mariadb(mysql中一个分支)

 一.安装数据库
1.安装数据库软件

yum install mariadb-server -y

2.开启服务

systemctl start mariadb

3.安全初始化

不做安全初始化的话数据库无密码登陆不安全

mysql_secure_installation  ##安全初始化

linux es数据库安装_数据库

linux es数据库安装_linux es数据库安装_02

linux es数据库安装_linux_03

3.登陆数据库

mysql -uroot -p

linux es数据库安装_数据库_04

4.关闭mysql数据库网络接口,因为开启接口不安全,容易受到数据库攻击(攻击指篡改数据库内容)

netstat -antlupe | grep mysql  ##查看数据库端口是开启的
vim /etc/my.cnf
10  skip-networking=1
systemctl restart mariadb
netstat -antlupe | grep mysql  ##查看数据库网络接口关闭

linux es数据库安装_数据库_05

linux es数据库安装_linux_06

linux es数据库安装_mysql_07

二.数据库的管理

1.登陆数据库

mysql -uroot -p

linux es数据库安装_linux_08

2.列出库

SHOW DATABASES;  	##列出库

linux es数据库安装_linux es数据库安装_09

3.进入mysql库

USE mysql;  		##进入mysql库

linux es数据库安装_linux es数据库安装_10

4.显示mysql数据库中的表

SHOW TABLES;		##显示表

linux es数据库安装_mysql_11

5.在user表中查询所有

SELECT * FROM user;

linux es数据库安装_mysql_12

6.在user表中查询指定的属性

SELECT Host,User,Password FROM user;

linux es数据库安装_linux es数据库安装_13

三.创建数据库和表
1.建立westos库

mysql -uroot -p
CREATE DATABASE westos;			##建立库
SHOW DATABASES

linux es数据库安装_数据库_14

2.在westos库中建立linux表

USE westos				##进入库
CREATE TABLE linux(			##建立表
    -> username varchar(10) not null,
    -> password varchar(50) not null
    -> );

linux es数据库安装_linux_15

3.向westos表中添加内容

DESC linux;				##查看表结构
INSERT INTO linux VALUES('tony','123');	##插入数据到linux表中
INSERT INTO linux VALUES('pake','123');	
SELECT * FROM linux;       		##查看所有字段在linux表中
SELECT username,password from linux;	##查询指定字段在linux表中

linux es数据库安装_linux es数据库安装_16

linux es数据库安装_mysql_17

4.更改

UPDATE linux SET password=password('tony') where username='tony';   
##password=‘tony’更改的密码会以明文的方式显示,password=password('tony')以密文的方式显示

linux es数据库安装_数据库_18

四.管理数据库的用户

1.创建用户

CREATE USER tony@localhost identified by 'redhat';
创建用户的名称是tony,密码是redhat
tony@localhost表示tony用户只能本机登陆,test@'%':表示test可以从远程登陆数据库

linux es数据库安装_linux_19

 

2.查看数据库中的用户

SELECT User FROM mysql.user;   ##查看mysql中的用户

linux es数据库安装_linux es数据库安装_20

3.用户授权

GRANT INSERT,UPDATE on westos.* to tony@localhost;

linux es数据库安装_linux_21

4.显示特定用户对数据库的权限

SHOW GRANTS FOR tony@localhost;

linux es数据库安装_数据库_22

5.撤销特定授权

REVOKE INSERT ON westos.* FROM tony@localhost;

linux es数据库安装_数据库_23

6.重新加载授权表

FLUSH PRIVILEGES;

linux es数据库安装_linux_24

7.删除tony用户

DROP USER tony@localhost

linux es数据库安装_mysql_25

五.数据库的备份
1.备份数据库到指定位置

mysqldump -uroot -pwestos westos > /mnt/westos.sql              ##将库westos整个备份
mysqldump -uroot -pwestos westos  --no-data > /mnt/westos.sql 	##将westos库的结构备份,不备份数据

linux es数据库安装_mysql_26

2.备份所有数据库

mysqldump -uroot -pwestos --all-database > /mnt/alldata.sql	##备份框架和内容
mysqldump -uroot -pwestos --all-database --no-data  > /mnt/alldata.sql	   ##只备份框架,不备份内容

3.删除westos的数据库

mysql -uroot -pwestos -e "DROP DATABASE westos;"  ##-e:参数后加动作:删除westos库

linux es数据库安装_linux es数据库安装_27

4.数据库的恢复

mysql -uroot -pwestos westos </mnt/westos.sql
由于数据库中已经没有westos数据库,恢复的时候会遇到问题

linux es数据库安装_linux es数据库安装_28

恢复方式1

mysql -uroot -pwestos -e "CREATE DATABASE westos;"  ##先新建westos库,再恢复数据
mysql -uroot -pwestos westos < /mnt/westos.sql      ##从备份的目录中恢复

linux es数据库安装_数据库_29

linux es数据库安装_linux es数据库安装_30

恢复方式2

vim /mnt/westos.sql  ##删除westos库,直接在备份文件中写入创建数据库命令
21行 CREATE DATABASE westos;
22行 USE westos;
mysql -uroot -pwestos < /mnt/westos.sql             ##从备份的目录中恢复

linux es数据库安装_linux_31

linux es数据库安装_linux_32

linux es数据库安装_linux es数据库安装_33

六.数据库密码忘记

1.关闭数据库

systemctl stop mariadb

2.跳过注册表直接登陆数据库,把他打入后台

mysqld_safe --skip-grant-table &

3.不需要密码登陆数据库

mysql

linux es数据库安装_linux es数据库安装_34

4.修改数据库root密码

UPDATE mysql.user SET Password='123' WHERE User='root'; 	##密码明文显示,不安全
UPDATE mysql.user SET Password=password('123') WHERE User='root';	##密码密文显示

linux es数据库安装_linux es数据库安装_35

linux es数据库安装_mysql_36

5.结束掉mysql的所有进程,保留grep进程,这是此条命令的进程

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

linux es数据库安装_mysql_37

6.打开数据库

systemctl start mariadb

linux es数据库安装_linux_38


七.安装phpmyadmin数据库图形管理

1.下载phpMyAdmin-2.11.3-all-languages
2.yum install php php-mysql -y

3.

yum install httpd
systemctl restart httpd

4.

phpMyAdmin-2.11.3-all-languages.tar.bz2 -------- >/var/www/html
tar jxf phpMyAdmin-2.11.3-all-languages.tar.bz2  ##解压

5.

5.mv phpMyAdmin-2.11.3-all-languages/ mysqladmin

linux es数据库安装_linux es数据库安装_39

6.cd mysqladmin
7.cp config.sample.inc.php config.inc.php

linux es数据库安装_linux_40

8.vim config.inc.php
$cfg['blowfish_secret'] = 'ba17c1ec07d65003';
less Documentation.txt  ##上边这个$cfg['blowfish_secret']

linux es数据库安装_linux es数据库安装_41

linux es数据库安装_linux es数据库安装_42

9.systemctl restart httpd.service  ##重启http

测试:
http://172.25.254.147/mysqladmin 如果还不行清除缓存

linux es数据库安装_mysql_43

 

linux es数据库安装_数据库_44

 

linux es数据库安装_mysql_45

 

linux es数据库安装_mysql_46

 

linux es数据库安装_linux_47

 用命令方式查看是否建立成功:

 

linux es数据库安装_mysql_48

linux es数据库安装_linux es数据库安装_49

使用图形与使用命令的结果是相同的。