第一章 基础知识
基本术语
数据库(Database) 存储已经组织好的数据的 容器(通
常是 一个文件或者文件集)
人们经常使用术语“数据库”来指代他们运行的数据库软件,这是错
误的。数据库软件称为数据库管理系统(DBMS),数据库是通过
DBMS创建和操作的容器。你不会直接访问数据库,而通常是使用
DBMS,让它来替你访问数据库。
GNU/Linux-MariaDB
第一章 基础知识
表(Table) 特定类型数据的结构化列表。
表是结构化的文件,用来存储特定类型的数据,表可能存储客户
清单 ,产品目录,或者其他信息列表。存储在表中的数据是一种类型
的 数据或一个列表,绝对不应该将顾客的列表信息和订单的列表信息
存储到同一个数据库表中,这样做会使随后的数据检索和访问变得困
难, 代替的解决方案是创建两个表,在每个表中存储其相应的列表
信息。数据库中每个表都有一个名字来标识它,并且在一个数据库中
表名是唯一的 。
GNU/Linux-MariaDB
第一章 基础知识
框架(Schema) 关于数据库和表布局以及属性信息。
列(Column) 表中的一个字段,表由一列或多列构成,列中存储
表的一部分信息。每一列存储一条特 定信息。例如在客户表 中
,一列存储客户编号,另一列 存储客户姓名,而地址,城 市,
州,邮政编 码存储在各自的列中。
数据库中每一列都有相应的数据类型,数据类型定义了该列可以
存储哪种类型的数据。例如,如果某列要存储数字,就应该使用numeric
数据类型。如果某列存储日期,文本,提示,金额等​就需要用恰当的数
据类型来指定。
GNU/Linux-MariaDB
第一章 基础知识
行(Row) 表中的一条记录
表中的数据存储在行里,把表当做类似电子表格的网格,在网格
中垂直的列就是表的列 ,水平的行就是表的行。例如,客户表可能
在每一行存储一个客户,表中行的数量也就是表中记录的条数。
NULL 在SQL中NULL用来指代空值(no value),如果一列被定
义为允许为NULL,当插入或者更新行时,可以忽略该列的数据 。
GNU/Linux-MariaDB
第一章 基础知识
主键(Primary Key) 唯一标识表中每一行的列(或者多列的集合)
。 主键用来关联特定的行,若没有主键,在表中更新和删除特定的
行会很麻烦。尽管主键不是必需的,但 大多数数据库设计者确保每
一个表都有一个主键,以便将来的数据操作是可行的和便于管理的。
一个表的任何列都可以作为主键,只要它遵循以下条件
1.任意两行不具有同样的主键值
2.没一行必须有一个主键值(主键列不能包含NULL值)
GNU/Linux-MariaDB
第一章 基础知识
SQL 是Structured Query Language( 结构化查询语言)的缩写。
是为了与数据库之间进行通信而专门设计出来的语言,它 由
极少的单词组成,提供一个从数据库读写数据的简单而 有效
的方式。
SQL的优势
不是某个数据库供应商的专利语言,几乎所有的主流的DBMS
都支持SQL
容易学习
尽管看起来简单,但它实际上是一门强有力的语言,通过灵活
地使用其语言元素,可以完成复杂和高难度的数据库操作。
GNU/Linux-MariaDB
第一章 基础知识
什么是MariaDB
前面论述过在实际上是数据库软件(DBMS或者数据库管理系统
)完成了存储,获取,管理以及操作数据库的工作,MariaDB是一个
DBMS,即数据库软件,它是基于MySQL的。
客户端/服务器软件
DBMS有两个分支:
一类是基于共享文件系统的DBMS,另一类是基于客户端/服务器的
DBMS。前者适用于桌面应用,一般补用来进行较高端或者更苛刻的
应用。
数据库(如MariaDB,MySQL,Oracal)是基于客户端/服务器的
数据库 。
GNU/Linux-MariaDB
第一章 基础知识
客户端/服务器应用分为两个部分,服务器部分是负责数据访问和操
作的软件,该软件运行在称为数据库服务器的计算机上;客户端部
分是用来与用户交互的软件,负责与数据文件进行交互的只有服务
器软件,所有对数据的请求,数据的增,删,改都是通过服务器软
件执行,而这些请求和更改来自运行客户端软件的计算机。例如,
如果你需要按照字母顺序列出产品列表,客户端软件通过网络将请
求提交给服务器软件,然后服务器软件处理请求,根据需要对数据
进行过滤,丢弃,排序,然后将最终结果发回给客户端软件 。
GNU/Linux-MariaDB
第一章 基础知识
服务器软件是MariaDB DBMS,可以运行一个本地安装的软件副本
,或者连接到一个拥有访问权限的远程服务器的副本。
客户端可以是MariaDB提供的工具,MySQL工具,脚本语言(如
Perl),Web应用开发语言(如ASP,JSP,PHP),编程语言(如C,
C++,Java)等。
GNU/Linux-MariaDB
第一章 基础知识
MariaDB工具
1.mysql命令行
每个MariaDB安装时都会附带一个简单的命令行实用程序mysql,
在操作系统命令行提示符中输入“mysql”会显示一条欢迎信息和简单
的提示,如下所示
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 2
Server version: 10.0.19-MariaDB mariadb.org binary distribution
Copyright (c) 2000, 2015, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]>
GNU/Linux-MariaDB
第一章 基础知识
2.MySQL Workbench
MySQL Workbench是一个用来简化管理MySQL服务器的图形交互
客户端,在MariaDB上也可以工作的很好
http://wb.mysql.com/可下载Linux,Mac OS X ,Windows版本
GNU/Linux-MariaDB
第一章 基础知识
安装MariaDB
#yum group install mariadb mariadb-client -y
启用MariaDB
#systemctl enable mariadb
查看MariaDB状态
#systemctl status mariadb
#netstat -lant | grep 3306
GNU/Linux-MariaDB
第一章 基础知识
初始化mariadb
#mysql_secure_installation
1)输入root(mariaDB)密码:(默认直接回车)
2)是否设置root密码?[Y/n]
3)移除匿名账户?[Y/n]
4)不允许root远程登陆?[Y/n]
5)移除测试数据库及访问?[Y/n]
6)重新加载特权表?[Y/n]
GNU/Linux-MariaDB
第一章 基础知识
确认root是否可以登陆
#mysel -uroot
ERROR 1045 (28000): Access denied for user
'root'@'localhost' (using password: NO)
验证test数据库是否被移除
mysql -uroot -p123456
验证root从远程无法登陆至本地
#mysql -uroot -p123456 -h mariadb_server
GNU/Linux-MariaDB
第一章 基础知识
显示本地数据库
#mysql -uroot -p123456
>show databases;
创建数据库
>create database crashcourse;
>show databases;
使用指定数据库
>use crashcourse;
运行脚本
>\. /downloads/create.sql
>\. /downloads/populate.sql
脚本下载地址http://forta.com/books/0321799941/
create.sql包含创建表的MariaDB SQL语句
populate.sql包含了用来填充这些表的SQL INSERT语句
GNU/Linux-MariaDB
第一章 基础知识
查看数据库的表
>show tables;
查看指定表中的信息
>describe customers;
显示广泛的服务器状态信息
>show status
显示创建指定数据库(表)的MariaDB语句
>show create database(table)
显示授予用户的安全权限
>show grants
显示服务器错误或警告信息
>show errors(warnings)
show语句列表
>help show
笔者留言 ,想一起研究的可以加我QQ619147075

GNU/Linux-MariaDB的更多相关文章

  1. (转)完全用GNU/Linux工作 by 王珢

    完全用GNU/Linux工作 王珢      (看完这篇博文,非常喜欢王珢的这篇博客,也我坚定了学gnu/linux的决心,并努力去按照国外的计算机思维模式去学习编程提高自己.看完这篇文章令我热血沸腾 ...

  2. Gnu/Linux的学习探索

    1.Gnu/Linux是一个基于POSIX和UNIX的多用户多任务 支持多线程多CPU的类UNIX的操作系统. 继承了UNIX以网络为核心的设计思想 是性能稳定的多用户网络操作系统. 1991年10月 ...

  3. GNU/Linux复习笔记(1)

    第一次接触GNU/Linux还是大四上学期实习的那两个月在window里装了 个虚拟机玩红帽的系统,那段时间稍微学了一点命令就不玩了.后来大四下学期认识了王总,装了双系统,那段时间又对linux有了进 ...

  4. 下一代GNU/Linux显示服务Wayland 1.12正式发布

    导读 最近,Bryce Harrington很高兴地宣布了“面向GNU/Linux操作系统的Wayland 1.12.0显示服务已正式发布”的消息.与它一同到来的,还有Weston 1.12.0合成器 ...

  5. ZFS(一):ZFS在Debian GNU/Linux上的安装

    以下内容翻译自https://pthree.org/2012/04/17/install-zfs-on-debian-gnulinux/,并附有原文,由于是第一次翻译,如有任何翻译不恰当之处,欢迎指出 ...

  6. debian7 请把标有“Debian GNU/Linux 7.1.0 _Wheezy_ - Official amd64 DVD Binary-1 20130615-23:06”的盘片插入驱动器“/media/cdrom/”再按回车键

    有时候,在通过apt-get install 安装软件的时候,会出现: 更换介质:请把标有“Debian GNU/Linux 7.1.0 _Wheezy_ - Official amd64 DVD B ...

  7. 完全用 GNU/Linux 工作(转)

    转自:http://www.chinaunix.net/old_jh/4/16102.html 看到一半,实在太长,但已觉得很好,转来分享一下. 完全用 GNU/Linux 工作 - 摈弃 Windo ...

  8. 世纪大争论:Linux还是GNU/Linux?

    我们在网上已经习惯用“Linux”来称呼Linux操作系统了,然而,偶尔也用“GNU/Linux”来称呼和指代同样的操作系统和软件.同时人们也在争论这两种称呼哪个更合适. 本文将不会选边站队,仅力图向 ...

  9. GNU/Linux Distribution Timeline v12.10

    GNU/Linux Distribution Timeline v12.10 原图下载 GNULinux Distribution Timeline 12.10.png GNU/Linux Distr ...

  10. Gnu Linux下文件的字符编码及转换工具

    /*********************************************************************  * Author  : Samson  * Date   ...

随机推荐

  1. 【Centos7 GRUB】修改开机等待时间

    centos7与之前版本不同,在/boot/grub/下没有 grub.conf文件,但在/etc/grub2/grub.cfg可找到帮助信息 [root@za default]# cat /boot ...

  2. DRAM(MT48LC8M32B2)学习

    Micron公司,型号为MT48LC8M32B2的DRAM,其86PIN的 TSOP封装引脚定义 Micron公司,型号为MT48LC8M32B2的DRAM,其86PIN的 TSOP封装引脚定义如上图 ...

  3. 虚拟机搭建hadoop环境

    这里简单用三台虚拟机,搭建了一个两个数据节点的hadoop机群,仅供新人学习.零零碎碎,花了大概一天时间,总算完成了. 环境 Linux版本:CentOS 6.5 VMware虚拟机 jdk1.6.0 ...

  4. MSF初体验 - kali linux 入侵XP系统

    最近做某安全竞赛平台的比赛,真正开始接触Metasploit这一渗透神器,同时也是装逼神器(2333-.),下面记录一下初步使用Metasploit的过程.首先在百度百科摘录了一段关于Metasplo ...

  5. python+selenium自动化软件测试(第1章):环境搭建,你也可以直接用Anaconda!

    1.1 环境搭建 1.1.1 selenium简介Selenium 是用于测试 Web 应用程序用户界面 (UI) 的常用框架.它是一款用于运行端到端功能测试的超强工具.您可以使用多个编程语言编写测试 ...

  6. 迈向angularjs2系列(3):组件详解

    一: 以组件开发一个to-do list应用 todo组件分为导入.接口定义.顶层组件.控制器.启动5个部分. app.ts: //导入 import {Component} from '@angul ...

  7. [Spring面试] 问题整理

    1.谈谈你对spring IOC和DI的理解,它们有什么区别? IoC:Inverse of Control 反转控制的概念,就是将原本在程序中手动创建UserService对象的控制权,交由Spri ...

  8. 又一流氓推广Microsoft Edge,我勒个去

    最新的Windows10 的升级也是醉了,不得不吐槽一个非常流氓的浏览器推广:Microsoft Edge(这小婊砸). 为了将之前的历史包袱IE干掉,这次微软也是蛮拼的,直接把IE从电脑里干掉了,你 ...

  9. WPF依赖属性2

    前一个博客,介绍了依赖属性的基本定义,在定义的过程中register中的的两个参数,并没有传入参数,不知道其是用来干什么的,以下,我们将介绍这两个参数的真正用途FrameworkPropertyMet ...

  10. Java Spring的简单见解

    Spring的注解特性,IOC控制反转 首先了解依赖注入是什么,就是在实例化对象的时候并不需要每次都new对象出来,spring管理对象,在你配置been或者@service时候 Spring会自动帮 ...