Linux入门 20_Linux中mysql数据库的基本管理

1.数据库的介绍

数据库就是个高级的表格软件,常见数据库有Mysql 、Oracle 、mongodb、 db2、 sqlite、 sqlserver、 等等

MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可 MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品。在存储引擎方面,使用XtraDB来代替MySQL的InnoDB。

##数据库中的常用名词##

1.字段		:表格中的表头
2.表		:表格
3.库		:存放表格的目录
4.查询		:对表格中的指定内容进行查看

2.mariadb的安装

dnf install mariadb-server.x86_64 -y

3.软件基本信息

mariadb.service				##启动服务
3306					##默认端口号
/etc/my.cnf.d/mariadb-server.cnf	##主配置文件
/var/lib/mysql				##数据目录,当需要重新安装mariadb时需要清理此目录或备份

4.数据库开启

systemctl enable --now mariadb

在这里插入图片描述

5.数据库的安全初始化

1.关闭数据库开放端口

vim /etc/my.cnf.d/mariadb-server.cnf
[mysqld]
skip-networking=1

systemctl restart mariadb

netstat -antlupe  | grep mysql	#此命令查询不到端口表示端口关闭

未修改之前可查询到3306端口
在这里插入图片描述
在这里插入图片描述
在/etc/my.cnf.d/mariadb-server.cnf中添加skip-networking=1后查询不到端口
在这里插入图片描述

2.执行安全初始化脚本
[root@Mariadb ~]# mysql ##默认不需要密码,初始化完毕后需要
ERROR 1045 (28000): Access denied for user ‘root’@‘localhost’ (using password: NO)

安全初始化脚本

mysql_secure_installation

在这里插入图片描述

所有提示全部 yes
此时的数据库需要用户名和密码登陆

[root@Mariadb ~]# mysql -uroot -p	## -u 指定登陆用户 -p 密码

密码不要在-p后面输入,在此输入可以通过历史命令调处密码,为了安全回车输入密码进入数据库
在这里插入图片描述

6.数据库的基本管理

1.查看

SHOW DATABASES;				##显示库名称

在这里插入图片描述

USE mysql;					##进入mysql库

在这里插入图片描述

SHOW TABLES;				##显示库中的所有表

在这里插入图片描述

SELECT * FROM user;			##查询User表的所有数据

在这里插入图片描述

SELECT Host,User,Password FROM user;	##查询指定字段

在这里插入图片描述

SELECT Host FROM mysql.user WHERE User='root'

在这里插入图片描述

2.新建

CREATE DATABASE westos;			##新建库
CREATE TABLE linux (username varchar(6) not null,password varchar(30) not null);			##新建表
DESC linux;						##显示表结构
INSERT INTO linux VALUES ('user1','123'),('user2','123')...; 	#插入数据
FLUSH PRIVILEGES;				#刷新数据库

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

3.更改

ALTER TABLE redhat RENAME linux;
	       现有表名	     更改后的表名

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

`ALTER TABLE linux ADD age varchar(4) AFTER password;	#在linux表中的passwd后添加age varchar(4`

在这里插入图片描述

ALTER TABLE linux DROP age;		#删除linux表中 age一整列
UPDATE linux SET age='20' WHERE username='user1';
					数据修改位置		指定的用户名

在这里插入图片描述

4.删除

DELETE FROM linux WHERE username='user2' and age='18';
DROP TABLE linux;	#删除表
DROP DATABASE westos;	#删除库

7.数据密码管理

1.数据密码更改

mysqladmin  -uroot -plee password westos

2.数据库密码破解

systemctl stop mariadb		#关闭mariadb
mysqld_safe --skip-grant-tables &

####进入数据库、打开mysql(USE mysql;)、展开mysql中的所有表(SHOW TABLES;)、打开user表(SELECT * FROM user;)
在这里插入图片描述

UPDATE mysql.user set Password=password('lee') WHERE User='root';	##当未使用过mysladmin更改过密码
UPDATE mysql.user set authentication_string=password('lee') WHERE User='root';	##当使用过mysladmin更改过密码

这里由于前面使用mysladmin更改过密码所以使用第二种方法
在这里插入图片描述

flush privileges;
ps aux | grep mysql
kill -9 mysql的所有进程
systemctl start mariadb

8.用户授权

1)以root身份登陆mysql(因为只有root用户可以进行用户授权等操作),创建新用户(用户名@localhost-该用户只能通过本地方式登陆;用户名@%-该用户能通过本地方式和网络登陆;identified by ‘用户密码’)

CREATE USER lee@localhost identified by 'lee';	##只能用localhost登陆
CREATE USER lee@% identified by '%';		##可以通过网络或localhost登陆

在这里插入图片描述2)用户创建完成后,在另一个shell里用新建用户身份登录进入数据库,显示所有的库,新建用户不能看到mariadb中的库
在这里插入图片描述
3)回到以root身份登陆mysql的shell中,对新建用户进行授权,允许其进行查看操作,完成授权后查看新建用户的权限,授权成功

GRANT INSERT,SELECT  ON lee.* TO lee@localhost;

在这里插入图片描述
4)此时新建用户在数据库中可以进行查看操作,但无法在库中的表里插入数据
5)在以root身份登陆mysql的shell中,对新建用户进行授权,允许其进行插入、删除等操作,完成授权后查看新建用户的权限,授权成功

5)我们以root身份登陆mysql后,可以随时撤销对新建用户的授权,撤销授权后查看新建用户的权限,撤销成功,接着可以删除该新建用户

SHOW GRANTS for lee@localhost;
REVOKE SELECT ON westos.* FROM lee@localhost;
DROP user lee@localhost;

9.数据库的备份

mysqldump -uroot -p123 --all-database
mysqldump -uroot -p123 --all-database --no-data

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

test1:

	mysql -uroot -p123 -e "create database westos;"
	mysql -uroot -p123 westos < /mnt/westos.sql

test2:

	vim /mnt/westos.sql
	CREATE DATABASE westos;
	USE westos;
	
	mysql -uroot -p123  < /mnt/westos.sql

10.phpmyadmin的安装

phpmyadmin是一个以PHP为基础,以web方式将数据库展现在网站上的数据库管理工具

dnf install httpd php php-mysqlnd -y	#安装httpd php php-mysqlnd
systemctl enable --now httpd	#开启httpd
systemctl stop firewalld 	#关闭防火墙

当以上php-mysqlnd安装成功后 php -m可以查看到php中加载了数据库模块
在这里插入图片描述

从网络软件仓库中下载phpmyadmin压缩包到http共享目录/var/www/html下(虚拟主机上已有phpmyadmin的压缩包),解压缩

cp phpMyAdmin-3.4.0-all-languages.tar.gz  /var/www/html/
cd /var/www/html/
tar jxf phpMyAdmin-3.4.0-all-languages.tar.bz2
mv phpMyAdmin-3.4.0-all-languages/ mysqladmin
cd mysqladmin

在这里插入图片描述

cp config.sample.inc.php  config.inc.php

在这里插入图片描述

firefox http://192.168.0.12/mysqladmin

在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

阿王不想秃头

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值