linux下mariadb设置权限,linux安配置及简单使用Mariadb

运行环境:Vmware centos7

一、MariaDB简介

MariaDB数据库管理系统是MySQL的一个分支,MariaDB默认的存储引擎是Maria,不是MyLSAM,Maria可以支持事务,但是默认情况下没有打开对事务的支持,因为事务支持会对性能有一定的映像,可以通过下列语句来转换为支持事务的Maria引擎

ALTER TABLE  'tablename' ENGINE=MARIA TRANSACTIONAL=1;

MariaDB与Mysql相比较,MariaDB更强的地方在于:Maria 存储引擎

PBXT 存储引擎

XtraDB 存储引擎

FederatedX 存储引擎

更快的复制查询处理

更少的警告和bug

运行速度更快

更好的功能测试

数据表消除

支持对Unicode的排序

二、安装MariaDB

注:当前使用的为root用户

1、检查系统是否有关于mysql数据库的文件,有的话可以执行该命令rpm -e mysql-server

rpm -e mysql

2、使用yum安装MariaDB,在centos7中光盘已经自带了MariaDB的安装包yum -y install mariadb mariadb-server

3fa3b908fb4410d540715a74406b1e8c.png

3、启动MariaDB,并设置开机自启动systemctl start mariadb

ss -ntl (MariaDB的监听端口号为3306)

c81285e84da68698104b78a271fd1508.pngsystemctl enable Mariadb(设置开机自启动)

82bf8280cf67fdf5df13e61c5a62eaf0.png

三、配置Mariadb

1、为mariadb设置密码登陆mysql_secure_installation

1c417f915217ff99cf1850314a94ae98.png

5d4f7324f3f8a4339da2b1e9a8d8ed0d.png

04c329f6263a46358bf991ea14564a59.png

c84bfb4fb5bcf7adfff104e5cb293c24.png

24c1b83ac4cdb84a2006c3b3e0c8ab3d.png

10132ead21490dfa85e6b96eeeb27ce0.png

2、配置完成后,测试登陆mysql -uroot -pcentos

f2e2aa045c78d96c1d313031c70e413a.png

3、配置MariaDB的字符集vim /etc/my.cnf

958bf9fbfd8e586c3bbe173ff3dd4dc6.pngvim /etc/my.cnf.d/mysql-clients.cnf

e1a77a6904fff068ddf5deadb39d8454.pngvim /etc/my.cnf.d/client.cnf

dc6ee107bb8a80baf471c64765a8e5df.png

可以通过mysql -uroot -pcentos进入MariaDB,查看字符集可以通过以下命令:show variables like "%character%";

show variables like "%collation%";

4、简单使用MariaDB

(1)建立用户并给与所有操作权限CREATE USER 'chen'@'localhost' IDENTIFIED BY 'centos1';

d955755cd2e6cefe81f6fb664e5ee189.png

测试:(成功登陆)

a551c02b25dbd5a8f2d5f0789895d9d0.png

(2)给用户赋予权限GRANT SELECT ON test.lesson TO 'chen'@'localhost'

2a1be53ca7cf01e1851ea49da4f8236d.png

权限修改完之后需要执行命令FLUSH PRIVILEGES 命令刷新配置权限使其生效

(3)在数据库中创建所需要的表create table youxi (id tinyint unsigned, youximing char(20) not null, shizhi int unsigned, redu char(10 )default 'up');

77f768807630153e6f3c1d46fd922856.png

desc youxi(表名)查看对表的详细描述

48d893cd44406e26eac33aae16099ce8.png

(4)往youxi表中添加内容,删除内容insert into youxi values (1,'wangzherongyao','6666666666',default);

71902170a23c82f20e9c5308d96cc7d8.png

一次性添加多行insert into youxi (id,youximing,shizhi,redu) values (2,'yingxionglianmeng',88888888,default),(3,'dixiachengyuyongshi',33333333,default),(4,'longzhigu',22222222,default);

d7470952b0216b5c0401d3df3f1a2d31.png

1b5b644eeb53656c0f192fb90e90c465.pngdelete from youxi where id=4;(如果不加条件语句,结果就是该表内容全部删除)

6b5931b6156f9dc890da6b4232488e10.png

(5)给表添加记录修改记录alter table youxi add fuzeren char(20)after shizhi

cfc0db8216fe853c553ff0525fa79280.png

7f176af4bd2c39e9d395adf717c8e451.pngupdate youxi set fuzeren='shyboy';

2c4699ccf545f481017b2d23ef7cdf92.png

5563210952be509d35ac5deac0c687f6.png

(6)表与表的连接

1、显示学生的名字与班级名

首先查看students表中的内容,其中只有班级的ID,并没有课程名select * from students;

32ff37c3bfff71a545a2dc7e7831a46b.png

然后我们查看关于关于班级的表classes,我们发现表classes中有和students表相同的属性classidselect * from classes;

476c439131e18f68ed9514d0e042141f.png

我们可以做一个内连接(innner join)select s.name student_name,c.class class from students s inner join classes c on s.classid=c.classid;

9e333544747becc83a9dc8a44cd59979.png

2、三表连接,显示学生名和所学的课程名

从上面我们可以得知students表中有一行classid,查看一下coc中也有属性列classidselect * from coc;

3e87ae972c3cf5dcfde0f21e0db3ca5b.png

继续查看有关课程的表courses;与此同时发现coc表中有与courses表中相同的属性列courseid;

5965c520fc5a8edf596b8ed468c0f2a0.png

所以我们可以进行三表连接来表示出所需要的信息select s.name as student_name, co.course as course from students s join coc c on s.classid=c.classid join courses co on c.courseid=co.courseid;

f1504b2bcdc28e203d041a7ac53115bf.png

3、更多表的连接

在2介绍了三张表的连接,我们在其上的基础上在连接一张表

显示每位同学的姓名、课程及成绩

首先查看关于成绩的表scores,我们发现scores表中stuid与students表相同,courseid与courses表中的相同;

select * from scores;

47cb01859adfc41d565215471a56b665.pngselect s.name student_name,co.course course,sc.score score from students s join coc c on s.classid=c.classid join courses co on c.courseid=co.courseid join scores sc on s.stuid=sc.stuid and co.courseid=sc.courseid;

c9eca0efed00fb926ee24edf6c2b55a4.png

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值