mariaDB
前言
数据库: 高效的存储和处理数据的介质(磁盘和内存)
数据库(Database)是按照数据结构来组织、存储和管理数据的建立在计算机存储设备上的仓库。
简单来说,是本身可视为电子化的文件柜——存储电子文件的处所,用户可以对文件中的数据进行新增、截取、更新、删除等操作。
关系型数据库:
什么是关系型数据库?
关系型数据库 :是一种建立在关系模型(数学模型)上的数据库。
关系模型:一种所谓建立在关系上的模型。关系模型包含三个方面:
数据结构: 数据存储问题,二维表(有行有列)
**操作指令集合:**所有SQL语句
完整约束: 表内数据约束(字段与字段),表与表之间约束(外键约束)
关系型数据库:
数据库名
表名
表结
表数据
DML(data manipulation language)数据操纵语言:
就是我们最经常用到的 SELECT(查)、UPDATE(改)、INSERT(增)、DELETE(删)。 主要用来对数据库的数据进行一些操作。
SELECT 列名称 FROM 表名称 ;
select xinming from student;
select name from student where number=1;
UPDATE 表名 SET name =xixi WHERE number=2;
INSERT INTO table_name (列1, 列2,…) VALUES; (值1, 值2,…)
DELETE FROM 表名称 WHERE 列名称 = 值;
DDL(data definition language)数据库定义语言:
其实就是我们在创建表的时候用到的一些sql,比如说:CREATE、ALTER、DROP等。DDL主要是用在定义或改变表的结构,数据类型,表之间的链接和约束等初始化工作上
CREATE TABLE 表名称
(
列名称1 数据类型,
列名称2 数据类型,
列名称3 数据类型,
…
);
Show tables;
ALTER TABLE table_name;
ALTER COLUMN column_name datatype;
MariaDB [person]> alter table students change column birth birthday date;
MariaDB [person]> alter table student rename students;
DROP TABLE 表名称;
DROP DATABASE 数据库名称;
DCL(Data Control Language)数据库控制语言:
是用来设置或更改数据库用户或角色权限的语句,包括(grant,revoke等)语句。这个比较少用到。
一、安装部署
#系统默认已经安装该数据库,如果没有安装,使用以下命令进行安装
[root@stone ~]# yum install -y mariadb-server
#启动数据库服务
[root@stone ~]# systemctl restart mariadb
#初始化数据库
[root@stone ~]# mysql_secure_installation
#在防火墙添加永久允许策略
[root@stone ~]# firewall-cmd --permanent --add-service=mysql
#重新加载防火墙配置
[root@stone ~]# firewall-cmd --reload
二、登陆使用
#数据库系统登陆
[root@stone ~]# mysql -u root -p mysql
#查看系统有多少数据库
MariaDB [(none)]> show databases;
两个其他的方案不用管。
#退出数据库系统
MariaDB [(none)]> quit
MariaDB [(none)]> exit
#创建一个数据库
MariaDB [mysql]> create database luntan;
#切换到某个数据库下
MariaDB [mysql]> use mysql;
#查看数据库的表
MariaDB [mysql]> show tables;
#查看数据表的表结构
MariaDB [mysql]> desc user;
#查询user表中的某些数据
MariaDB [mysql]> select host,user,password from user;
#创建一张表
MariaDB [mysql]> create table person.student (
-> number int,
-> name varchar(20),
-> age int,
-> sex varchar(10),
-> birth date
-> );
Query OK, 0 rows affected (0.007 sec)
#查询创建好的表的表结构
MariaDB [mysql]> use person
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
MariaDB [person]> desc student;
±-------±------------±-----±----±--------±------+
| Field | Type | Null | Key | Default | Extra |
±-------±------------±-----±----±--------±------+
| number | int(11) | YES | | NULL | |
| name | varchar(20) | YES | | NULL | |
| age | int(11) | YES | | NULL | |
| sex | varchar(10) | YES | | NULL | |
| birth | date | YES | | NULL | |
±-------±------------±-----±----±--------±------+
5 rows in set (0.003 sec)