GNU/Linux-MariaDB

来源:互联网 发布:评价莫言诺贝尔 知乎 编辑:程序博客网 时间:2024/06/07 21:54

第一章 基础知识
基本术语
数据库(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
原创粉丝点击