一、数据库的安装及安全初始化
1.yum install mariadb-server -y 安装数据库
2.systemctl start mariadb 开启数据库
sytemctl enable mariadb 设置开机自启动
3.netstat -antlupe | grep mysql 查看mysql 端口
4.vim /etc/my.cnf 关闭数据库裸露的端口,不然数据库,裸露在外面会很危险
skip-networking=1 在第一个语句块添加此语句
5.mysql_secure_installation 设置密码 匿名用户远程不能登陆
6.mysql 登陆数据库,没有密码
7.mysql -uroot -p 登陆数据库
二、数据库的查询和建立
1.show databases; 查看数据库
2.use 库名称; 进入库
3.show tables; 显示表
4.select * from 表名称; 显示表里面内容
select 字段1,字段2,.. from 表名称 where 字段='字段值';
5.desc 表名字; 显示表结构
6.create database 库名字; 建立数据库
7.create table 表名字(usrname varchar(10) not null,passwd varchar(30) not null); 建立表
8.insert into 表名字 values ('linux','123'); 插入值
9.alter table 表名字 add class varchar(10); 给表里面插入属性
10.alter table 表名称 add age varchar(10) after passwd; 给passwd属性后面添加age属性
11.alter table 表名字 drop age; 删除age属性
12.alter table 表名字 rename 新的名字; 修改表名字
13.update table 表名字 set class= 'happy' where passwd='123' and username = 'linux'; 添加表里面锁属性值
14.drop table linux; 删除表
15.drop database mysql; 删除数据库
三、数据库用户授权1.mysql -uroot -p 登陆数据库
create database userdate; 创建数据库
create table usertab value(username varchar(10) not null,userpasswd varchar(30) not null); 创建表
create user sqq@localhost identified by 'lee'; 创建本地(localhost)用户sqq,设置密码为lee
select * from mysql.users; 查看数据库用户表
grant select,insert on userdate.* to sqq@localhoat; 给sqq用户查看和插入权力对于数据库userdate(*刚建立的用户没有权限,必须要赋予他操作某一个数据库的权限)
show grant for sqq@localohost; 查看sqq的权力
flush privileges; 重载授权表,授权完后必须重载授权表,不然权力同步不过去
revoke select on userdate.* from sqq@localhost; 撤销本地用户对数据库userdate的选择权力
drop user sqq@localhost; 删除本地用户sqq(2)mysql -usqq -plee 用建立的用户和密码登陆
show databases;
use userdate;
insert into usertab values('sqq','123'); 因为赋予了用户sqq查看和插入的权力,所以可以查看和插入
四、数据库的备份和恢复
备份:
musqldump -uroot -plee --all-database 备份框架和数据
mysqldump -uroot -plee --add-database --no-data 备份框架不备份数据
mysqldump -uroot -plee userdate >/mnt/userdate.sql 备份数据库到/mnt/userdate.sql文件
mysql -uroot -plee -e "drop datebase userdate;" 删除数据库userdate
mysql -uroot -plee -e "show databases;" 显示数据库恢复:
(1):vim /mnt/userdate.sql 在此文件里面添加如下句子
create database userdate; 创建数据库
或者:mysql -uroot -plee -e "create datebase userdate;" 直接执行命令创建数据库第二步:mysql -uroot -plee userdate < /mnt/userdate.sql ; 将/mnt/userdate.sql导入数据库userdate
五、数据库的密码的更改和破解
密码更改:
1.mysqladmin -uroot -pwestos password lee
密码破解:
1.systemctl stop mariadb 关闭数据库
2.mysqld_safe --skip-grant-table &; 跳过注册表直接登陆数据库并打入后台
3.mysql 无密码登陆
4.update mysql.user set Password='123' where User='root'; 设置root密码,此方式密码为明文显示
update mysql.user set Password=password('123') where User='root'; 设置root密码,此方式密码密文显示
5.ps aux | grep mysql 查看数据库所有进程号
kill -9 进程号 结束所有进程
6.fg 查看后台进程
ctrl + z
killall -9 musql_safe 结束掉无密码登陆的进程
7.systemctl start mariadb 打开数据库
8.mysql -uroot -p123 用新设置密码登陆