######数据库的安装
mariadb数据库,mysql的一个分支

yum install mariadb-server -y
systemctl start mariadb
systemctl enable mariadb
mysql                  ##查看数据库,此时不需要密码可以直接登陆数据库

Linux 支持access数据库吗 linux使用数据库_数据库

netstat -antlupe | grep mysql    ##查看数据库对外访问端口

Linux 支持access数据库吗 linux使用数据库_Linux 支持access数据库吗_02

vim /etc/my.cnf                  
skip-networking=1    ##关闭数据库对外访问接口
systemctl restart mariadb

Linux 支持access数据库吗 linux使用数据库_Linux 支持access数据库吗_03


Linux 支持access数据库吗 linux使用数据库_mysql_04


######数据库初始化

使用命令mysql_secure_installation对数据库进行初始化设置,第一个问题回车,第二个设定密码,其他全点击y。然后登陆数据库需要数输入密码

Linux 支持access数据库吗 linux使用数据库_数据库_05

mysql -uroot -p             ##查看数据库

Linux 支持access数据库吗 linux使用数据库_mysql_06


######数据库的查询

SHOW DATABASES;        ##查看数据库 
USE 库名称;             ##进入数据库
SHOW TABLES;           ##查看表
DESC 表名称;            ##查看表结构
FLUSH PRIVILEGES;      ##刷新数据库信息 
SELECT * FROM 表名称;   ##查看表所有字段
QUIT                   ##退出
SELECT 字段1,字段2,... FROM 表名称 WHERE 字段=‘字段值’;
例:SELECT Host,User,Select_priv FROM user WHERE Host='localhost';  ##查看user中Host为localhost的Host,User,Select_priv三个字段

Linux 支持access数据库吗 linux使用数据库_Linux 支持access数据库吗_07


Linux 支持access数据库吗 linux使用数据库_Linux 支持access数据库吗_08


Linux 支持access数据库吗 linux使用数据库_mysql_09


Linux 支持access数据库吗 linux使用数据库_linux_10


######数据库管理

1)建立

SHOW DATABASES                ##列出库
CREATE DATABASE hello;        ##建立库
USE hello;                   ##进入库

Linux 支持access数据库吗 linux使用数据库_linux_11

CREATE TABLE linux(           ##建立表
username varchar(20) not null,
password varchar(16) not null
);                            ##此命令是一行命令,换行写方便排错
DESC linux;                   ##查看表结构

Linux 支持access数据库吗 linux使用数据库_linux_12

INSERT INTO linux values ('lol','123');       ##插入数据到linux表中
SELECT * FROM linux;                         ##查询所有字段在linux表中
SELECT username,password FROM linux;         ##查询指定字段在linux表中

Linux 支持access数据库吗 linux使用数据库_mysql_13

2)更改

UPDATE linux SET password=234 WHERE username='lol';                   ##修改linux表中username为lol的password为234

Linux 支持access数据库吗 linux使用数据库_mysql_14

ALTER TABLE linux ADD class varchar(20);       ##在linux表中添加class字段,默认加在最后面

Linux 支持access数据库吗 linux使用数据库_mysql_15

ALTER TABLE linux ADD age varchar(20) AFTER password;  ##指定加在password后面

Linux 支持access数据库吗 linux使用数据库_Linux 支持access数据库吗_16

ALTER TABLE linux DROP class;                  ##删除字段

Linux 支持access数据库吗 linux使用数据库_linux_17

ALTER TABLE linux RENAME redhat;        ##更改表名称

Linux 支持access数据库吗 linux使用数据库_数据库_18


3)删除

DELETE FROM redhat WHERE username='th';  ##删除表中指定字段的内容

Linux 支持access数据库吗 linux使用数据库_数据库_19

DROP TABLE redhat;       ##删除表

Linux 支持access数据库吗 linux使用数据库_mysql_20

DROP DATABASE westos;       ##删除数据库

Linux 支持access数据库吗 linux使用数据库_linux_21


4)用户授权

创建用户时使用@%时被授权用户在任意客户端都可以登陆数据库 ,@localhost只有在数据库所在主机登陆数据库

CREATE USER lol@localhost identified by '123';    ##创建用户并设定密码
GRANT SELECT,INSERT ON westos.* TO lol@localhost; ##给lol用户访问与插入权限

Linux 支持access数据库吗 linux使用数据库_mysql_22

SHOW GRANTS FOR lol@localhost;                    ##查看lol用户权限

Linux 支持access数据库吗 linux使用数据库_linux_23

REVOKE INSERT ON westos.* FROM lol@localhost;      ##取消lol用户权限
DROP USER lol@localhost;   ##删除lol用户  
FLUSH PRIVILEGES;          ##刷新

Linux 支持access数据库吗 linux使用数据库_linux_24

测试:

用被授权用户登陆和数据库

Linux 支持access数据库吗 linux使用数据库_数据库_25


可以查看到westos数据库,并且可以进入记忆插入数据

Linux 支持access数据库吗 linux使用数据库_linux_26


Linux 支持access数据库吗 linux使用数据库_Linux 支持access数据库吗_27

5)数据库的备份

mysqldump -uroot -p123 redhat > /mnt/redhat.sql
mysqldump -uroot -p123 redhat --no-data     ##只备份表格不备份数据 
mysqldump -uroot -p123 --all-database       ##备份所有数据库   
mysqldump -uroot -p123 --all-database  --no-data  ##只备份所有数据库框架不备份数据

Linux 支持access数据库吗 linux使用数据库_linux_28


当数据库被删除时

Linux 支持access数据库吗 linux使用数据库_Linux 支持access数据库吗_29


恢复方式1:

使用命令建立数据库直接恢复

mysql -uroot -p123 -e "CREATE DATABASE redhat;"
 mysql -uroot -p123 redhat < /mnt/redhat.sql

Linux 支持access数据库吗 linux使用数据库_数据库_30


Linux 支持access数据库吗 linux使用数据库_mysql_31


恢复方式2:

先在配置文件中写好建立westos再恢复

vim /mnt/redhat.sql
 21 CREATE DATABASE redhat;
 22 USE redhat;

mysql -uroot -p123 < /mnt/redhat.sql

Linux 支持access数据库吗 linux使用数据库_Linux 支持access数据库吗_32


6)当超级用户密码忘记时:

systemctl stop mariadb.service     ##关闭mariadb服务
mysqld_safe --skip-grant-tables &  ##开启数据库安全模式
mysql                              ##此时可以不用密码直接登陆数据库

Linux 支持access数据库吗 linux使用数据库_Linux 支持access数据库吗_33

update mysql.user set Password=password('westos') where User ='root';      
##重置密码,password=password('westos')加密密码,password=westos修改的密码为明文

Linux 支持access数据库吗 linux使用数据库_mysql_34

ps aux | grep mysql          ##查看mysql所有进程
kill -9 mysql的所有进程id     ##结束mysql所有进程
systemctl restart mariadb    ##重启数据库

Linux 支持access数据库吗 linux使用数据库_数据库_35


当用户记得超级用户密码时:

mysqladmin -uroot -p原密码 password 新密码

Linux 支持access数据库吗 linux使用数据库_linux_36

######网页版数据库
1)安装httpd服务,php相关软件

yum install httpd -y              ##安装httpd服务
yum install php -y                 
yum install php-mysql.x86_64 -y

Linux 支持access数据库吗 linux使用数据库_Linux 支持access数据库吗_37


2)在网上下载phpMyAdmin数据库图形管理插件,解压下载的软件,并将其重命名为mysqladmin移到httpd的默认发布目录/var/www/html/目录里(注意所有插件需要根据本机安装的mariadb版本对应)

tar zxf phpMyAdmin-4.0.10.20-all-languages.tar.gz
mv phpMyAdmin-4.0.10.20-all-languages /var/www/html/mysqladmin

Linux 支持access数据库吗 linux使用数据库_mysql_38


3)进入mysqladmin目录里并执行cp config.sample.inc.php config.inc.php命令。然后关闭火墙重启httpd服务

cd /var/www/html/mysqladmin/
cp config.sample.inc.php config.inc.php
systemctl restart httpd
systemctl stop firewalld.service

Linux 支持access数据库吗 linux使用数据库_数据库_39


4)此时进入浏览器查看会出现报错,缺少php-mbstring插件(需要和php版本一致)

Linux 支持access数据库吗 linux使用数据库_mysql_40


5)去网上下载php-mbstring插件并安装,再次重启httpd服务

rpm -ivh php-mbstring-5.4.16-21.el7.x86_64.rpm
systemctl restart httpd

Linux 支持access数据库吗 linux使用数据库_mysql_41


6)再次进入浏览器输入ip/mysqladmin查看

Linux 支持access数据库吗 linux使用数据库_数据库_42


7)将语言改为简体中文登陆即可简单方便的使用网页管理数据库

Linux 支持access数据库吗 linux使用数据库_数据库_43


Linux 支持access数据库吗 linux使用数据库_Linux 支持access数据库吗_44