Linux Engineer学习------Mariadb入门

1、MariaDB数据库

database:数据库

什么是数据库

DB,数据库:一批数据的集合,主流的数据库多用来存放关系型表格数据

1.1虚拟机Server:安装MariaDB数据库

[[email protected] ~]# yum -y install mariadb-server

MariaDB数据库 ,端口:3306

1.2启动数据库服务

[[email protected] ~]# systemctl restart mariadb

[[email protected] ~]# systemctl enable  mariadb

[[email protected] ~]#netstate -anptu | grep 3306  #查看是否启动

MariaDB数据库基本操作

[[email protected] ~]# mysql                               #默认没有密码

MariaDB [(none)]> show  databases;             #查看所有库,注意分号结尾

MariaDB [(none)]> create database  nsd1710;    #创建库

MariaDB [(none)]> show  databases;

MariaDB [(none)]> drop  database  nsd1710;      #删除库

MariaDB [(none)]> show  databases;

MariaDB [(none)]> quit

1.3设置MariaDB数据库管理员的密码

数据库管理员名:root   MariaDB数据库   mysql----->user

系统管理员名:root /etc/passwd

mysqladmin  [-u用户名]   [-p[旧密码]]   password '新密码'

[[email protected] ~]# mysqladmin  -u  root   password  '123'  #设置数据库密码

[[email protected] ~]# mysql -u root -p    #交互式设置

Enter password: 输入密码

[[email protected] ~]# mysql -u root -p123     #非交互输入密码进入

1.4禁止监听,只服务于本机

[[email protected] ~]# vim  /etc/my.cnf

[mysqld]

skip-networking     //跳过网络监听,数据库只能被 localhost 访问

.. ..

[[email protected] ~]# systemctl restart mariadb

– 使用/选择数据库:USE 数据库名;

– 列出库里有哪些表:SHOW TABLES;

[[email protected] ~]# mysql  -u root  -p123

MariaDB [mysql]> show   databases;

MariaDB [mysql]> use   mysql;

MariaDB [mysql]> show   tables;

MariaDB [mysql]> create   database   nsd1710;

MariaDB [mysql]> show   databases;

1.5导入数据到数据库中

在虚拟机Server0上操作:下载事先备份好的数据库文件

wget http://classroom/pub/materials/users.sql

[[email protected] ~]# mysql -u root -p123 nsd1710 < users.sql

[[email protected] ~]# mysql -u root -p123

MariaDB [(none)]> use nsd1710;

MariaDB [nsd1710]> show tables;

1.6查询数据库中表记录

select  表字段   from  库.表名

select  *   from  nsd1710.base;

MariaDB [nsd1710]> select * from location;

MariaDB [nsd1710]> select * from base;

增 insert

删 delete

改 update

查 select

1.7有条件的查询

1.在base表中查询密码为123的用户的名字?

[[email protected] ~]# mysql -u root -p123

MariaDB [(none)]> use nsd1710;

MariaDB [nsd1710]> show tables;

> select * from base where password='123';

> select name,password from base where password='123';

> select name from base where password='123';

> select id,name from base;

并使用相 应的 SQL 查询以回答下列问题:

1)密码是 solicitous 的人的名字?

> select name from base where password='solicitous';

2)有多少人的姓名是 Barbara 同时居住在 Sunnyvale?

> select *  from  base,location   where  base.name='Barbara' and  location.city='Sunnyvale'    and  base.id=location.id;

> select count(*) from  base,location  where  base.name='Barbara'  and  location.city='Sunnyvale'    and  base.id=location.id;

> insert base  values (6,'Barbara','321');   #插入表记录

> insert location  values (6,'Sunnyvale');   #插入表记录

> select * from base;

> select * from location ;

> select * from base,location                             where  base.name='Barbara'  and  location.city='Sunnyvale'    and  base.id=location.id;

1.8数据库授权

– 除了 root 用户,此nsd1710数据库只能被用户 lisi 查询,此用户的密码为123

MariaDB数据库   mysql----->user

– GRANT 权限列表  ON 数据库名.表名 TO 用户名@ 客户机地址  IDENTIFIED BY '密码';

[[email protected] ~]# mysql -u root -p123

grant select on nsd1710.* to  [email protected] identified by  '123';

当lisi从本地localhost登陆,输入密码123.将会获得nsd1710库中所有表的查询的权限

验证:测试lisi登陆

[[email protected] ~]# mysql -u lisi -p123

1.9DELETE 删除表记录

? MariaDB [(none)]> 交互指令

– DELETE  FROM  [数据库.]表名  WHERE  条件语句;

1. 禁止空密码root用户访问 mariadb 数据库

[[email protected]r0 ~]# mysql -u root -p123

> use mysql;

> select user,host,password from user;

> select user,host,password from user   where password='';

> delete from user  where  password='';

> select user,host,password from user;

刷新user表的记录:

MariaDB [(none)]> flush privileges;

原文地址:http://blog.51cto.com/13452945/2061017

时间: 2024-10-21 20:38:47

Linux Engineer学习------Mariadb入门的相关文章

Linux Engineer学习------Samba

实验环境: 修改两台虚拟机防火墙默认区域为trusted: [[email protected] ~]# firewall-cmd --set-default-zone=trusted [[email protected] ~]# firewall-cmd --set-default-zone=trusted 1.samba 1.1简述 Samba共享服务,跨平台的共享(Windows与Linux) – 用途:为客户机提供共享使用的文件夹 – 协议:SMB(TCP 139).CIFS(TCP 4

Linux Engineer学习------NFS

实验环境:修改两台虚拟机防火墙默认区域为trusted [[email protected] ~]# firewall-cmd --set-default-zone=trusted [[email protected] ~]# firewall-cmd --set-default-zone=trusted 1.NFS共享服务(Linux与Linux) 1.1普通NFS服务 ? Network File System,网络文件系统 – 用途:为客户机提供共享使用的文件夹 – 协议:NFS(TCP/

Linux Engineer学习------WEB/Postfix

实验环境:修改两台虚拟机防火墙默认区域为trusted [[email protected] ~]# firewall-cmd --set-default-zone=trusted [[email protected] ~]# firewall-cmd --set-default-zone=trusted 1.web 案例1搭建基本的Web服务 ? 基于 B/S (Browser/Server)架构的网页服务 – 服务端提供网页 – 浏览器下载并显示网页 ? Hyper Text Markup

Linux Engineer学习------ISCSI

实验环境:修改两台虚拟机防火墙默认区域为trusted [[email protected] ~]# firewall-cmd --set-default-zone=trusted [[email protected] ~]# firewall-cmd --set-default-zone=trusted 1.parted 划分分区的指令:parted (专门做大空间划分 2T) GPT: 突破了4个主分区限制,可以有很多主分区 1.1交互式分区 [[email protected] ~]# p

linux小白学习入门过程

这篇博客不是写技术的. 说到linux,本人也只是小白级别的.但是本人并不认为小白就不能写点学习过程. 每个人吧,都有各自的学习方式.有些人想学啥新东西的时候喜欢买几本书,然后啃啃啃.这种学习方式适合长时间且从基础到深入的层层深入,大部分人坚持不了,基本上书都是看到第二章(第一章都是绪论,没啥人看).有些人呢,喜欢在网站上搜各种教程.各种从入门到精通,然则搜了一大堆,没头没脑,搜一点学一点,用一点.这种学习方式适合临时抱佛脚,比如工作中需要这一点东西,临时搜一下能用就行了,或者学习其他的东西的时

Linux操作系统零基础入门学习

linux的发展史以及简介:https://blog.csdn.net/zengxiantao1994/article/details/53141747 linux的命令有很多,不需要可以去记,忘了就去差 Linux之通配符 https://www.cnblogs.com/0zcl/p/6821213.html 课时3: 多实践,多练习 课时4: 为什么要学习linux 用来做服务器端的操作系统 课时5 操作系统的分类 相比window系统 ,权限少,安全性高 课时6 linux的学习 linu

清华大学出版社《MariaDB入门很简单》

MariaDB是MySQL的重要分支,而MySQL数据库是一款非常优秀的自由软件.它是由瑞士的MySQL AB公司开发的.2008年,Sun公司耗资10亿美元收购了MySQL数据库.现在MySQL数据库已经是世界上最流行的数据库之一. 2010年4月20日,Oracle公司收购了Sun公司,MySQL数据库又成为了Oracle公司的数据库产品.由于种种原因,MySQL的发展进入缓慢期.其更新越来越慢,同时出现闭源倾向,这引起开发者的各种不满和焦虑. 2012年12月,MySQL之父Monty W

Linux内核学习总结

李泽源 原创作品 转载请注明出处 <Linux内核分析>MOOC课程:http://mooc.study.163.com/course/USTC-1000029000 [Linux内核学习总结] 幸福来得很突然,这门课就快结束了…… 是时候,总结下这段时间的坚持了,也给同样对Linux内核有兴趣的你一个指南. 在这门课的学习过程中,按照老师的要求,每次课后都写一篇博文,这是一个很好的学习方式.每当写这些文章的时候,总是要多看几遍视频,再查查相关的资料,才能勉强凑成一个完整的文档:同时也把自己学

再谈如何学习Linux,一线Linux专家学习经验谈

记得最早接触linux是在2000年,那个时候,还在上大学,一个同学从荷兰回来,带回来了一个Linux的拷贝版,记得版本还是Redhat6.2.曾经为安装一个系统让我们忘记疲劳,挑灯夜战,不亦乐乎.那时Linux的学习资料还很少,能够学习的书籍也不多,网上Linux技术社区也很少,就凭着Redhat6.2自带的几页使用说明开始了学习linux的生涯. 转眼间,10几年过去了,我也与Linux相伴了10多年,10年间,随着虚拟化.云计算时代的来临,Linux迅猛发展,在服务器领域已经占据半壁江山,