第一章 基础知识
基本术语
数据库(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. 使用oschina的git服务器图文流程 (转)

    参考了豆沙包的教程我自己也做了一遍也来写写我的心得和体会 由于报名参加了游戏蛮牛<刀塔传奇>开源项目,服务器+客户端,所以觉着不管时间怎么着,还是或多或少做点贡献吧.毕竟这种体验应该还是第 ...

  2. 常用的Linux发行版

    Linux发行版百花齐放 [内容摘要] 如今,众多的Linux发行版百花齐放,linux的阵营日益壮大,每一款发行版都拥有一大批用户,开发者自愿为相关项目投入精力.Linux发行版可谓是形形色色,它们 ...

  3. 【Linux】查看进程号

    1.查看占用8080端口的进程号 lsof -i: | awk '{print $2}' | uniq | grep -P -o "[0-9]{2,5}" 2.查看使用java进程 ...

  4. Win10家庭版重命名Administrator用户文件夹

    需要将Windows系统默认的Administrator帐号文件夹改名为我们自定义的名称.. 但是Win10家庭版找不到组策略gpedit.msc 根据微软官方有关Win10各版本操作系统中对于组策略 ...

  5. <当幸福来敲门>之一些很喜欢的台词收藏

    <当幸福来敲门> ================ ================

  6. java 面试,java 后端面试,数据库方面对初级和高级程序员的要求

    本内容摘自 java web轻量级开发面试教程 对于合格的程序员,需要有基本的数据库操作技能,具体体现在以下三个方面. l  第一,针对一类数据库(比如MySQL.Oracle.SQL Server等 ...

  7. java web轻量级开发面试教程摘录,java web面试技巧汇总,如何准备Spring MVC方面的面试

    本内容摘自 java web轻量级开发面试教程 https://baike.baidu.com/item/Java%20Web%E8%BD%BB%E9%87%8F%E7%BA%A7%E5%BC%80% ...

  8. ReactNative环境搭建扩展篇——安装后报错解决方案

    之前一篇写了<逻辑性最强的React Native环境搭建与调试>说了RN的安装,今天在这里做一个复盘,让我们能够更直观更深入的了解React Native(以下简称RN),这一篇重点来说 ...

  9. python在windows和linux环境的进程对比

    1.fork进程:(1)在windows系统中不可以用fork来创建进程,linux可以,但是创建大量进程使用很不方便. 2.Process进程: import multiprocessing as ...

  10. python专题-Mysql数据库(python3._+ PyMysql)

    之前写过一篇 Python使用MySQL数据库的博客,主要使用的是Python2和MySQLdb驱动. python使用mysql数据库 Python2 ---> Python3 MySQLdb ...