mysql数据库的安装和使用

1.mysql数据库的安装

yum search mariadb	#找到需要安装的数据库
yum install mariadb-server.x86_64 #安装数据库
systemctl start mariadb #开启数据库服务
systemctl enable mariadb #设置开机自启动,完成此次操作后,安装步骤结束
mysql_secure_installation	#设置密码,初始密码默认为空,回车即可。
mysql -uroot -predhat  #开启数据库服务 -u:后跟用户 -p:后跟密码

如图;
在这里插入图片描述
在这里插入图片描述
2.数据库的基本操作:
数据库基本操作图:
在这里插入图片描述
数据库包括数据库,数据表,行,列和主键。

mysql -uroot -predhat	#进入数据库,root为进入数据库的用户,redhat为用户设置的密码
create database studentInfo;	#创建数据库,studentInfo为所创建数据库的库名
show databases;	#显示数据库
use studentInfo;	#进入数据库studentInfoshow
create table;		#后跟表名,创建数据表
show tables;	#显示表
create table student(name varchar(50),age int,score float);	#输入表信息(姓名,年龄,成绩)
select * from student; #显示数据表student的内容
desc student;	#显示表的结构
insert into student values("harry",18,90);	#在数据表student中插入内容
insert into stuent(passwd,username) values("456","user2");#按照指定顺序向表中插入数据
update student set passwd='456' where username="user1";	#更新表中的内容
alter table student add sex varchar(3);	#添加sex列到student表中
delete from student where username="user1";		#除表中用户名为user1的记录
drop table student;	#删除表
drop database studentInfo;	#删除数据库

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

数据库中插入中文内容数据表:

step1:create table employee(id varchar(50), name varchar(50), age int) default  charset=utf8;	#创建可插入中文内容的数据表(设置 charset=utf8格式即可插入中文内容)
	step2:insert into employee values ('1', '粉条', 10);		#在数据表中插入信息
	step3:create table if not exists  employee(id varchar(50), name varchar(50), age int) default  charset=utf8;	#数据库中不存在数据表时创建数据表,存在数据表时不做操作。

代码显示结果截图:
在这里插入图片描述
数据库类型之数值:
在这里插入图片描述
数据库类型之日期:
在这里插入图片描述
数据库类型之字符串:
在这里插入图片描述
数据库属性设置;
在这里插入图片描述
3. 用户登陆和访问权限的操作:
首先检查数据库服务器和客户端是否全部安装完毕:
服务器安装命名:yum install mariadb-server
客户端安装命令:yum install mariadb
然后进行下述操作;

create user hello@localhost identified by 'hello';	#创建用户hello,可在本机登陆,密码为hello
create user hello@'%' identified by 'hello';	#创建用户hello,可在远程登陆,密码为hello
create database mariadb;	#创建一数据库mariadb
grant all on mariadb.* to hello@localhost;	#给hello@localhost用户授权,如果为all,授权所有权限(insert,update,delete,select,create)
flush privileges;	#刷新,重载授权表
show grants for hello@localhost;	#查看用户授权
revoke delete,update on mariadb.* from hello@localhost;	#删除指定用户授权
drop user hello@localhost;	#删除用户

(1).用户登陆:
运行截图:
服务器端;
在这里插入图片描述
客户端测试;
在这里插入图片描述
(2)、普通用户更改权限;:刚刚操作不能改
授权:. : 表示所有数据库.所有表

select * from mysql.user;	#查看权限

step1:

grant all on *.* to hello@'172.25.254.2'; 	#对某用户授权

step2:

show grants for hello@'172.25.254.2';	#查看授权

step3:测试
客户端连接,测试是否可以创建数据库

mysql -uhello -phello -h172.25.254.2
show databases;
create database helloTest01;
drop database helloTest01;

操作截图’;
服务器端:
在这里插入图片描述
客户端:
在这里插入图片描述
(3)、删除授权:

revoke create on *.* from hello@'172.25.254.2'; 	#删除授权
show grants for hello@'172.25.254.2';	#查看授权

服务器端:操作截图
在这里插入图片描述

4.忘记mysql用户密码时,怎么找回?

1.关闭mariadb服务
systemctl stop mariadb	#关闭mariadb服务
2.跳过授权表
mysqld_safe --skip-grant-table & 	#跳过授权表
3.修改root密码为westos
mysql
>update mysql.user set Password=password('westos')  where User='root';	
4.关闭跳过授权表的进程,启动mariadb服务,使用新密码即可
ps aux | grep mysql 
kill -9 pid
mysql -uroot -p

跳过授权表的目的是进入mysql时不需要输入密码
操作截图:
在这里插入图片描述
在这里插入图片描述
5. mysql数据库的备份与开发

备份:
		mysqldump -uroot -predhat helloTest  :备份指定数据库指定用户名和密码
实验一:
	1)重定向位置:
		mysqldump -uroot -predhat Employee
	2) 输入内容:
		mysql -uroot -predhat
		>use Employee;
		>show tables;
		>create table employee(name varchar(50),age int,score float);
		>insert into employee values('粉条',18,90);
		>insert into employee values('hello',18,90);
3) 恢复:
		mysqldump -uroot -predhat Employee
		mysqldump -uroot -predhat Employee > employee.db
		mysqladmin -uroot -predhat create backup
		mysql -uroot -predhat backup <employee.db
		mysql -uroot -predhat
		>show databases;
		>use backup;
		>show tables;
		>select * from employee;
	

操作截图:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
实验二(只备份表头)

mysqldump -uroot -predhat --no-data  Employee >employee.db
mysqladmin -uroot -predhat create nodata
mysql -uroot -predhat create nodata< employee.db

实验三(全部备份):

mysqldump -uroot -predhat --all-databases     >all.db   :备份所有
mysql -uroot -predhat  < all.db  :恢复

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_42213622/article/details/86519282