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 :恢复