1.查找与mariadb相关的安转包版本
yum search mariadb
2.安装mariadb的客户软件包和服务软件包
yum install mariadb mariadb-server.x86_64 -y
3.启动mariadb服务
systemctl start mariadb
systemctl enable mariadb
4.mariadb监听的端口
netstat -antlpe | grep mysql
ss -antlpe | grep mysql
vim /etc/services #所有服务与端口默认的对应关系
5.只允许本地连接,阻断所有来自网络的连接
vim /etc/my.cnf
skip-networking=1
systemctl restart mariadb
2>.mariadb的简单操作
1.mariadb的基本操作
1.设置mysql的登陆密码
mysql_secure_installation
2.进入mysql数据库
mysql -uroot -pyy
3.显示包含的所有数据库
show databases;
4.进入work数据库
use work;
5.显示work数据库中的所有表
show tables;
6.显示work数据库中home表中的所有数据结构
desc home;
7.显示work数据库中home表中的所有数据内容
select * from home;
8.显示work数据库中home表中的age列数据内容
select age from home;
2.mariadb的创建、插入、更新、删除
1.创建一个命名为py_stud的数据库
create database py_stud;
2.在py_stud数据库中创建一个命名为python1的表格结构,支持中文显示
create table python1(name varchar(20),age int) default charset=utf8;
3.在py_stud数据库中创建一个命名为python1的表格结构,支持中文显示,如果不存在,则创建,否则不创建
create table if not exists python1(name varchar(20),age int) default charset=utf8;
4.向py_stud数据库中的python1表格插入内容;按照指定表格结构顺序向表中插入数据
insert into python1 values("ming",23);
5.向py_stud数据库中的python1表格插入内容;按照指定顺序向表中插入数据
insert into python1 (age,name) values(18,"xiao");
6.更新py_stud数据库中的python1表格内容,如果名字等于“xiao”,则更新age=21
update python1 set age=21 where name="xiao";
7.向 py_stud数据库中的python1表格结构 增加一列结构【score int】
alter table python1 add score int;
8.删除 py_stud数据库中的python1表格内容中name=“ming”的所有行;
delete from python1 where name="ming";
9.删除数据库或者表
drop table python; # 删除数据表格
drop database work; # 删除数据库work
10.在py_stud数据库中创建一个命名为python的表格结构后,使用命令给python表格添加支持中文显示
create table python( name varchar(20) not null, passwd varchar(5));
alter table python default charset=utf8;
11.在py_stud数据库中创建一个命名为jave的表格结构,并且使表头id为唯一主健
create table jave(id int primary key,name varchar(20));
3>.mariadb的用户和访问权限的操作
1.在数据库中创建用户kai,可在本机登陆,密码为kai
create user kai@localhost identified by "kai";
2.在数据库中查看可以登陆的用户
select * from mysql.user
3.在数据库中创建用户kai,可在远程登陆,密码为kai
create user kai@"%" identified by "kai";
4.在数据库中给用户本地用户kai授予数据库bank的所有权限
grant all on *.* to kai@localhost; # *.*表示所有数据库,所有数据表
grant all on bank.* to kai@localhost;
5.在数据库中刷新,重载授权表
flush privileges;
6.查看本地用户kai的用户授权
show grants for kai@localhost;
7.删除本地用户kai的在数据库bank的删除权限
revoke delete on bank.* from kai@localhost;
8.在数据库中删除本地用户kai
drop user kai@localhost;
4>.忘记mysql用户密码时,找回mysql密码
1.关闭mariadb服务
systemctl stop mariadb.service
2.跳过授权表,并且程序在后台运行,使任何人都可以登陆mysql数据库
mysqld_safe --skip-grant-table &
3.进入mysql数据库,更新mysql用户,设置用户【root】的密码为【yu】,
mysql
update mysql.user set Password=password("yu") where User="root";
4.关闭跳过授权表的进程,启动mariadb服务,使用新密码即可
ps aux | grep mysql #查看mysql的后台进程
kill -9 pid # 关闭mysql有关系的后台进程
systemctl start mariadb.service # 开启mariadb服务
mysql -uroot -pyu # 使用密码进入mysql数据库
5>.mysql的备份与恢复
1.将bank数据库【包含数据库结构】备份到当前路径bank.dump中
mysqldump -uroot -pyu bank >bank.dump
2.先在数据库中创建一个bank1数据库;然后将备份的文件bank.dump恢复到bank1中;
mysqladmin -uroot -pyu create bank1
mysql -uroot -pyu bank1<bank.dump
3.将bank数据库【不包含数据库结构】备份到当前路径nobank.dump中;恢复方法和【包含数据库结构】的数据库恢复一样
mysqldump -uroot -pyu --no-data bank >nobank.dump
4.将数据库中所有数据库全部备份到当前路径alldatabases.dump中
mysqldump -uroot -pyu --all-databases >alldatabases.dump
5.将备份的文件alldatabases.dump恢复到数据库中
mysql -uroot -pyu < alldatabases.dump