千家信息网

Linux_MySQL(mariadb)数据库(2)V1.0

发表于:2025-01-19 作者:千家信息网编辑
千家信息网最后更新 2025年01月19日,MySQL AB --> MySQLSolaris:二进制版本;www.mysql.comMariaDB: www.mariadb.orgMariaDB的特性:插件式存储引擎:存储管理器有多种实现版本
千家信息网最后更新 2025年01月19日Linux_MySQL(mariadb)数据库(2)V1.0

MySQL AB --> MySQL

Solaris:二进制版本;

www.mysql.com

MariaDB: www.mariadb.org

MariaDB的特性:

插件式存储引擎:存储管理器有多种实现版本,彼此间的功能和特性可能略有区别;用户可根据需要灵活选择;

存储引擎也称为"表类型";

(1) 更多的存储引擎;

MyISAM:不支持事务;(CentOS 6 --> 5.1.73 默认存储引擎为MylSAM红帽调整为 inndDB)

MyISAM --> Aria

InnoDB --> XtraDB 支持事物

5.5以后都支持事物

:支持事务;

(2) 诸多扩展和新特性;

(3) 提供了较多的测试组件;

(4) truly open source;真开源

MySQL的发行机制:

Enterprise:企业版

Commutiny:社区版

安装和使用MariaDB:

(1) rpm包;

(a) 由OS的发行商提供;

(b) 程序官方提供;

(2) 源码包;

(3) 通用二进制格式的程序包;(就像win上的绿色软件一样)

通用二进制格式安装注意:

1.注意版本,有的版本要求glibc版本要求

2.展开位置必须为/usr/local (tar xf MARIADB_NAME -C /usr/local)

3.要求文件名必须为mysql (一般选用软连接而不直接命名文件夹 ln -sv MARIADB_NAME mysql)

4,移动文件时注意属主数组,默认为系统用户的mysql,(chown -R root:mysql ./* )

5.创建数据存放目录 (数据库有可能未来会非常大,非测试建议独立分区,创建目录注意权限)

6,即使是二进制安装的,默认也会读取/etc/my.cnf文件 (主配置文件)

7.需独立设置配置文件时,安装包下的support-files下有配置文件模板 (cnf结尾的文件都是,适用于不同的硬件配置)

8.复制模板文件到/etc/ 或自建目录/etc/mysql/my.cnf并重命名

9.mysql是但进程多线程,而对linux而言,一个进程最多使用2.7G内存,没屌用

10.在要配置的文件中指定mysql数据库数据位置( 添加 datadir = /SOME/TO)

11.skip_name_resolve = ON

12 innodb_file_per_table = ON

13.复制安装包support-files文件中mysql.server复制到/etc/rc.d/init.d/mysqld (确认执行权限 执行chkconfig --add mysqld)

14.初始化数据库.在数据库所在路径(/usr/local/mysql) 执行 scripts/mysql_install_db --user=mysql -datadir=/mydata/data

通用二进制格式安装MariaDB:

(1) 准备数据目录;

以/mydata/data目录为例;

(2) 安装配置mariadb

# useradd -r mysql

# tar xf mariadb-VERSION.tar.xz -C /usr/local

# cd /usr/local

# ln -sv mariadb-VERSION mysql

# cd /usr/local/mysql

# chown -R root:mysql ./*

# scripts/mysql_install_db --user=mysql -datadir=/mydata/data

# cp support-files/mysql.server /etc/init.d/mysqld

# chkconfig --add mysqld

(3) 提供配置文件

ini格式的配置文件;各程序均可通过此配置文件获取配置信息;

[program_name]

配置文件生效次序查询: ~]# mysql --help

# cp support-files/my-large.cnf /etc/my.cnf

添加三个选项:

datadir = /mydata/data

innodb_file_per_table = ON

skip_name_resolve = ON

(4) 启动服务

# service mysqld start

MariaDB程序的组成:

C:Client

mysql:CLI交互式客户端程序;

mysqldump:备份工具;

mysqladmin:管理工具;

mysqlbinlog:查看mysql二进制日志

...

S:Server

mysqld

mysqld_safe:建议运行服务端程序;

mysqld_multi:多实例;

三类套接字地址:

IPv4, 3306/tcp

Unix Sock:/var/lib/mysql/mysql.sock, /tmp/mysql.sock

C <--> S: localhost, 127.0.0.1

命令行交互式客户端程序:mysql

mysql

mysql [OPTIONS] [database]

常用选项:

-uUSERNAME:用户名,默认为root;

-hHOST:远程主机(即mysql服务器)地址,默认为localhost;

-p[PASSWORD]:USERNAME所表示的用户的密码; 默认为空;

注意:mysql的用户账号由两部分组成:'USERNAME'@'HOST'; 其中HOST用于限制此用户可通过哪些远程主机连接当前的mysql服务;

HOST的表示方式,支持使用通配符:

%:匹配任意长度的任意字符;

172.16.%.%, -->172.16.0.0/16

_:匹配任意单个字符;

-Ddb_name:连接到服务器端之后,设定其处指明的数据库为默认数据库;

-e 'SQL COMMAND;':连接至服务器并让其执行此命令后直接返回;

命令:

客户端命令:本地执行

mysql> help

\u db_name:设定哪个库为默认数据库 #反斜线

\q:退出;

\d CHAR:设定新的语句结束符;

\g:语句结束标记;

\G:语句结束标记,结果竖排方式显式;

\s:查看数据库状态

服务端命令:通过mysql连接发往服务器执行并取回结果;

DDL, DML, DCL

注意:每个语句必须有语句结束符,默认为分号(;)

***********************************************

数据类型:

表:行和列 一个表可以没有行 但不能没有列 没有列不叫表

创建表:定义表中的字段;

定义字段时,关键的一步即为确定其数据类型;

用于确定:数据存储格式、能参与运算种类、可表示的有效的数据范围;

字符型:字符集

码表:在字符和二进制数字之间建立映射关系;

种类:

字符型:

定长字符型:

CHAR(#):不区分字符大小写

BINARY(#):区分字符大小写

变长字符型:

VARCHAR(#)

VARBINARY(#)

对象存储:

TEXT 文本 2^32次方格文本 4G 不区分

BLOB 区分大小写

内置类型:

SET 集合(给定abc 只能填写abc的组合)

ENUM 枚举(不如男女.星期.种类什么的)

数值型:

精确数值型:

INT(TINYINT(一个字节0-255),SMALLINT(小整型2字节),MEDIUMINT(3字节),INT(4字节),BIGINT(8))

近似数值型:

FLOAT 单精度浮点

DOBULE 双精度浮点

日期时间型:

日期型:DATE

时间型:TIME

日期时间型:DATETIME

时间戳:TIMESTAMP

年份:YEAR(2), YEAR(4)

数据类型有修饰符:

UNSIGNED:无符号;

NOT NULL:非空;

DEFAULT value:默认值;


数据 文件 配置 字符 数据库 服务 二进制 程序 存储 用户 命令 格式 版本 目录 类型 语句 支持 字符型 字节 引擎 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 盛立军计算机网络技术基础视频 网络安全保护的是什么意思 其实增强网络安全意识 舟山市委网络安全和信息化 如何检查列中重复的数据库 洪帝网络技术卡盟网盘公布 机顶盒播放服务器异常 武汉的软件开发区 物联网平台软件开发合同 有没有免费服务器可以上传代码 互联网科技对生活的影响 网络安全性分析报告 软件开发收入科目明细 英语小作文网络博客网络安全 双随机一公开网络安全 服务器内存可以在台式机上用吗 服务器管理员用户被禁用 it行业软件开发有投资吗 马来西亚软件开发靠谱吗 东城服务器搬迁怎么收费 社区版国产数据库 数据库状态为 华为通用软件开发是干什么的 阿里巴巴集团网络安全 有没有免费服务器可以上传代码 一个网站需要域名和服务器吗 乐驾互联北京软件开发有限公司 网络服务器安全控制技术 数据库数据文件什么时候为空 上海网络安全审计系统咨询证书
0