Linux之mariadb数据库管理

linux之mariadb数据库管理

  • 什么是数据库

数据库是指按照某些特定结构来存储数据资料的数据仓库。在当今这个大数据技术迅速崛起的年代,互联网上每天都会生成海量的数据信息,数据库技术也从最初只能存储简单的表格数据的单一集中存储模式,发展到了现如今存储海量数据的大型分布式模式。在信息化社会中,能够充分有效地管理和利用各种数据,挖掘其中的价值,是进行科学研究与决策管理的重要前提。同时,数据库技术也是管理信息系统、办公自动化系统、决策支持系统等各类信息系统的核心组成部分,是进行科学研究和决策管理的重要技术手段。

数据库管理系统是一种能够对数据库中存放的数据进行建立、修改、删除、查找、维护等操作的软件程序。

  • mariadb数据库安装
yum search mysql   ##搜索
yum install mariadb-server -y  ##安装服务
systemctl start mariadb    ##开启服务
systemctl enable mariadb   ##开机启动服务

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 设定mysql数据库用户登陆密码
mysql_secure_installation   ##设置登陆用户及密码
回车 密码 确认密码 回车 回车 回车 回车
mysql -uroot -p      ##root用户密码登陆
mysql -uroot -p密码   ##不建议这么做会暴露密码

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 关闭mysql数据库网络接口
netstat -antlupe | grep mysql
vim /etc/my.cnf
加入:
skip-networking=1

systemctl restart mariadb
netstat -antlupe | grep mysql

在这里插入图片描述
在这里插入图片描述

  • 数据库的管理

查询:
切记在数据库中键入命令一定要以“;”结尾

SHOW DATABASES;    ##查看数据库
USE DATABASENAME;  ##进入数据库
SHOW TABLES;   ##查看数据表
SELECT * FROM TABLE;   ##查询所有字段在表中
SELECT Host FROM user WHERE User='root';   ##查看指定字段,指定用户在表中

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
建立:

SHOW DATABASES; ##列出库
CREATE DATABASE liu;  ##建立库
USE liu;  ##进入库
CREATE TABLE chen (
    -> username varchar(20) not null,
    -> password varchar(20) not null
    -> );
DESC chen  ##查看表结构
INSERT INTO lchen VALUES ('lee','123'); ##插入数据到chen中
SELECT * FROM chen; ##查询所有字段在chen表中
SELECT username,password from chen; ##查询指定字段在chen表中

在这里插入图片描述
在这里插入图片描述
更改:
内容修改:

UPDATE chen SET password=('456') ##修改字段
UPDATE linux chen password=('789') WHERE username='pipi'; ##精确修改

在这里插入图片描述
添加字段:

ALTER TABLE chen ADD class varchar(20);
ALTER TABLE chen ADD age varchar(20) AFTER password;

在这里插入图片描述
在这里插入图片描述
删除字段:

ALTER TABLE chen DROP CLASS;

在这里插入图片描述
更改表名:

ALTER TABLE chen RENAME redhat;

在这里插入图片描述
在这里插入图片描述

删除:

DELETE FROM redhat where username='haha';  ##删除行
DROP TABLE redhat;    ##删除表
DROP DATABASE liu     ##删除库

在这里插入图片描述

  • 用户授权
CREATE USER liu@'localhost' identified by '12345'; ##建立授权,只能本地主机登陆 '%'表示所有主机
SELECT User FROM user;  ##查看本地用户
GRANT SELECT,INSERT on westos.* TO lee@localhost; ##授权
SHOW GRANTS FOR liu@localhost; ##显示授权

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

REVOKE INSERT ON westos.* FROM lee@localhost;   ##撤销授权
DROP USER westos@localhost    ##删除
FLUSH PRIVILEGES;     ##刷新

在这里插入图片描述
在这里插入图片描述

  • 数据库的备份
mysqldump -uroot -pwestos westos > /mnt/westos.sql
mysqldump -uroot -pwestos westos --no-date ##只有结构没有数据
mysqldump -uroot -pwestos --all-database ##所有的数据库
mysqldump -uroot -pwestos --all-database --no-data  ##所有的数据库但只有结构没有数据

在这里插入图片描述
数据库的恢复1(恢复前删除之前创建的库):

mysql -uroot -pwestos -e "CREATE DATABASE westos;"
mysql -uroot -pwestos westos < /mnt/westos.sql

在这里插入图片描述

数据库的恢复2(删除上一实验恢复的库):

vim /mnt/westos.sql
加入:
CREATE DATABASE westos;
USE westos

mysql -uroot -pwestos < /mnt/westos.sql

在这里插入图片描述
在这里插入图片描述

  • 数据库密码更改

超级用户已知密码更改密码:

mysqladmin -uroot -pwestos password lee

在这里插入图片描述

超级用户忘记密码更改密码:

systemctl stop mariadb
mysqld_safe --skip-grant-tables & ##打入后台
mysql
update mysql.user set Password=password('redhat')where User='root';

killall -9 mysql
ps aux | grep mysql  ##查看跟mysql相关进程
kill -9 PID   ##关闭所有mysql的进程
systemctl start mariadb ##开启

在这里插入图片描述
在这里插入图片描述

END

猜你喜欢

转载自blog.csdn.net/weixin_44828950/article/details/89762067
今日推荐