千家信息网

Linux_MySQL二次整理(1)

发表于:2024-11-26 作者:千家信息网编辑
千家信息网最后更新 2024年11月26日,MariaDB or MySQL:非精准描述:数据的存储是在硬盘上以数据流形式存在,读取文件时,文件先被加载到内存中,然后在内存中查找所需要的字段,当文件特别大时,文件无法放进内存中,而且搜索一个字段
千家信息网最后更新 2024年11月26日Linux_MySQL二次整理(1)

MariaDB or MySQL:

非精准描述:

数据的存储是在硬盘上以数据流形式存在,读取文件时,文件先被加载到内存中,然后在内存中查找所需要的字段,当文件特别大时,文件无法放进内存中,而且搜索一个字段也相当浪费时间,所以数据库诞生

数据库是以某种特定格式(格式化或半格式化数据)存储, 之后可以建立INDEX(索引)来查找定位某一个数据(索引可以分多级),内存中就可以只加载索引信息,索引对应的数据存储在磁盘上则可以找到数据,大大的节约了时间

发展历史:

层次模型 --> 网状模型 --> (Codd) 关系模型

DBMS 数据库管理系统 --> RDBMS 关系型数据库管理系统

RDBMS:

范式:第一范式、第二范式、第三范式;

表:row(行), column(列);

关系运算:

选择: 挑选出符合条件的数据

投影: 挑选出指定字段

数据库概念:表、索引、视图(虚表)、SQL、存储过程、存储函数、触发器、事件调度器;

DDL

DML

约束:

主键约束:惟一、非空;一张表只能有一个;定义成为能够唯一表示一行数据在整个表中的内容的(一个字段或多个字段的组合)

惟一键约束:惟一,可以存在多个;

外键约束:参考性约束;表和表之间存在约束关系.被引用的表上存在主键,在引用表上的某一字段一定是在被引用表上存在的数据

检查性约束:check; 定义的数据的范围

三层模型:

物理层 数据以数据流形式存储在硬件上 文件系统级别 (系统工程师)

逻辑层 将数据流通过特定的结构转化成 (DBA)

视图层 可视化文本(表) (程序员)

实现:

Oracle, DB2, Sybase, Infomix, SQL Server;

MySQL, MariaDB, PostgreSQL, SQLite;

MySQL:

5.1 --> 5.5 --> 5.6 --> 5.7

MariaDB:5.5.x --> 10.x





特性:

插件式存储引擎

单进程多线程(32位系统只能使用3G内存)

安装MySQL:

OS Vendor:rpm

MySQL:

source code:cmake (编译器)

binary package: 通用二进制包

i686, x86_64;

glibc VERSION (要求glibc的版本 )

prepackage:rpm, deb

os, arch,

配置文件:

读取多处的多个配置文件,而且会以指定的次序的进行;

# my_print_defaults 查看配置生效次序

Default options are read from the following files in the given order:

/etc/mysql/my.cnf /etc/my.cnf ~/.my.cnf

不同的配置文件中出现同一参数且拥有不同值时,后读取将为最终生效值;

修改默认读取的配置文件(mysqld_safe命令):

--defaults-file=file_name

于读取的默认配置文件之外再加载一个文件:

--defaults-extra-file=path

配置文件格式:ini风格的配置文件,能够为mysql的各种应用程序提供配置信息:

配置段:

[mysqld]

[mysqld_safe] 线程安全的MySQL

[mysqld_multi] 一台主机上运行多个MySQL

[server]

[mysql] 客户端配置

[mysqldump] 备份 客户端程序

[client]

...

PARAMETER:

innodb_file_per_table 有些发行版是 "-"."_"通用的 而有些是只其中一种

innodb-file-per-table

程序文件:

服务端程序:mysqld_safe, mysqld_multi

客户端程序:mysql, mysqldump, mysqladmin 通过mysql协议能连接到mysql发起请求并获取相应的

工具程序:myisampack, ...

Yum安装的mysql启动后会自动初始化数据库 二进制格式安装则不会

mysql --> mysql protocol --> mysqld

mysql:交互式CLI工具;

mysql [options] db_name

常用选项:

--host=host_name, -h host_name:服务端地址;

--user=user_name, -u user_name:用户名;

--password[=password], -p[password]:用户密码;

--port=port_num, -P port_num:服务端端口;

--protocol={TCP|SOCKET|PIPE|MEMORY}:

本地通信:基于本地回环地址进行请求,将基于本地通信协议;

Linux:SOCKET

Windows:PIPE,MEMORY

非本地通信:使用非本地回环地址进行的请求; TCP协议;

--socket=path, -S path

--database=db_name, -D db_name:

--compress, -C:数据压缩传输

--execute=statement, -e statement:非交互模式执行SQL语句;

--vertical, -E:查询结果纵向显示;

mysql命令的使用帮助:

# man mysql

# mysql --help --verbose

sql脚本运行:

mysql [options] [DATABASE] < /PATH/FROM/SOME_SQL_SCRIPT

mysqld服务器程序:工作特性的定义方式

命令行选项


数据 文件 配置 程序 存储 字段 数据库 内存 格式 系统 索引 多个 模型 范式 服务 命令 地址 客户 客户端 数据流 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 苹果六怎么信任软件开发者 新乡市天旭网络技术有限公司 赤壁网络安全维护工程师 兴仁软件开发定制公司 软件开发应配备什么设备 软件开发岗有身高要求 艾尔登法环武器数据库 网络安全总体要求中a类的是 吾达软件开发有限公司 我为网络安全代言的手抄报 导入数据库后修改数据库 高级数据库技术学什么 湛江网络安全在哪里办 智慧运维管理平台数据库设计 通信协会网络安全人员能力认证 自己搭建的游戏怎么改数据库 源文鉴的数据库都有哪些 关于软件开发的英文书 下面不是数据库设计阶段的是 互联网科技公司福利最好 软件开发项目验收标准和方法 数据库出入库数据统计用量 山东海迪互联网科技有限公司 cj数据库什么意思 数据库两天一备份 网络安全工程师培训班一般多少钱 小区物业软件开发文档模板 数据库系统概论速成pdf 好听的互联网科技名字 如何恢复数据库中数据
0