mariadb数据库的管理

1.数据库的基本介绍

什么是数据库?

通过表格的方式保存数据的软件,类似excel的高级表格

多张表的集合叫做库

常见数据库:

Mysql Oracle mongodb db2 sqlite sqlserver ......

Mysql是开源的(SUN公司----->Oracle公司)

mariadb是Mysql的一种,maria是Mysql数据库创造者的女儿名字

数据库中的常用名词:

1.字段:表格中的表头,每一列为一个字段

2.表:表格,由很多字段组成

3.库:存放表格的目录

4.查询:对表格中指定内容进行查看


2.数据库的安装及安全初始化

配置好软件仓库

dnf install mariadb-server -y

#安装mariadb软件

systemctl enable --now mariadb

#数据库开启

软件基本信息:

mariadb.server                             #启动服务

3306                                             #默认端口号

/etc/my.cnf.d/mariadb-server.cnf  #主配置文件

/var/lib/mysql                                #数据目录,当需要重新开启mariadb时需要清理此目录或备份

数据库的安全初始化:

1.关闭数据库开放端口:

vim /etc/my.cnf.d/mariadb-server.cnf

systemctl restart mariadb

netstat -antlupe | grep mariadb

#此命令查询不到端口

2.执行安全初始化脚本

测试:

mysql -uroot -p

#登录数据库

ll /var/lib/mysql

#查看mysql数据目录

#如果想重装数据库,需清除数据目录原有数据


3.数据库的基本管理

1.查看

SHOW DATABASES;

##显示库名称

USE mysql;

#进入mysql库

SHOW TABLES;

#显示库中的所有表

SELECT * FROM user;

#查看表user中数据

SELECT Host,User,Password FROM user;

#查询表user的指定字段

#user为相对路径,mysql.user为绝对路径

SELECT Host,User,Password FROM mysql.user WHERE Host='localhost';

SELECT Host,User,Password FROM mysql.user WHERE Host='localhost' AND User='root';

2.新建

CREATE DATABASE westos;

#新建库

CREATE TABLE userlist (

username VARCHAR(8) not null,

password VARCHAR(50) not null

);

#新建表,VARCHAR(50)表示长度最长50个字符

DESC westos.userlist;

#查看表结构

INSERT INTO westos.userlist VALUES ('user1','123'),('user2','123');

#插入数据,括号内依次输入每个字段的数据,多个数据用逗号隔开

FLUSH PRIVILEGES;

#刷新数据库

3.更改

更改库的名称可以将数据目录中的文件重命名(mv oldfilename newfilename)

但一般情况不更改,可能会导致数据错乱

ALTER TABLE userlist RENAME linux;

#更改表名

ALTER TABLE userlist ADD age VARCHAR(4);

#添加字段,若不说明位置,默认添加到最后

ALTER TABLE userlist DROP age;

#丢弃字段

ALTER TABLE userlist ADD age varchar(4) AFTER username;

#指定在将字段添加在username字段后

UPDATE userlist SET age=18;

#更改字段数据,不加说明默认该字段修改所有数据

UPDATE userlist SET age=20 WHERE username='user1';

#更改username='user1'的数据age为20

4.删除

DELETE FROM userlist WHERE username='user2' AND age='18';

#删除userlist表内username='user2' AND age='18'的数据

ALTER TABLE userlist DROP age;

#丢弃字段,删除一列数据

DROP TABLE userlist;

#删除表

DROP DATABASE westos;

#删除库


4.数据库密码管理

1)数据库密码更改

mysqladmin -uroot -pwestos password lee

2)数据库密码破解

systemctl stop mariadb

#关闭数据库

mysqld_safe --skip-grant-table &

#启动数据库安全模式,跳过授权表,&打入后台

UPDATE mysql.user SET Password=password('westos') WHERE user='root';

#使用过mysqladmin修改过密码

UPDATE mysql.user SET authentication_string=password('westos') WHERE user='root';

#使用过mysqladmin修改过密码

ps aux | grep mysql

kill -9 mysql所有进程

systemctl start mariadb


5.数据库的授权操作

CREATE USER lee@'localhost' identified by 'lee';

#只能用localhost登录,只能在数据库所在的主机中使用

CREATE USER lee@% identified by 'lee';

#可以通过网络或localhost登录

SHOW GRANTS FOR lee@localhost;

#查看权限

GRANT INSERT,SELECT ON westos.* to lee@localhost;

#给lee@localhost用户对westos.*授权插入和查询

REVOKE SELECT ON westos* FROM lee@localhost;

#收回用户lee对westos.*的查询权力

DROP USER lee@localhost;

#删除用户


6.数据库的备份及还原

mysql -uroot -p -e "命令"

#不登陆数据库,直接执行引号内命令

mysqldump -uroot -p --all-database

#输出所有数据

mysqldump -uroot -p --all-database --no-data

#只输出库和表的结构,不输出数据

mysqldump -uroot -p westos

#输出westos库

备份:

命令后加 > file

mysqldump -uroot -p westos > /mnt/westos.sql

数据恢复:

mysql -uroot -p -e "DROP DATABASE westos;"

#删除库westos

方法一:

mysql -uroot -pwestos -e "CREATE DATABASE westos;"

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

方法二:

mysql -uroot -p -e "DROP DATABASE westos;"

#删除库westos

vim /mnt/westos.sql

CREATE DATABASE westos;

USE westos;

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


7.数据库的web控制器

PhpMyAdmin

dnf install httpd php php-mysqlnd -y

systemctl enable --now httpd

firewall-cmd --permanent --add-service=http

firewall-cmd --reload

firewall-cmd --list-all

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值