mysql组织结构

1.数据的组织结构

<1>层次型

<2>网状型

<3>关系型


2.mysql软件包格式

<1>.软件包管理器特有的格式:.rpm包

<2>.通用二进制包:解压玩就能用

<3>.源程序:源码包

3.mysql是C/S架构

客户端:mysql   要安装的包:mysql

服务端:mysqld     要安装的包:mysql-server

默认是监听在3306端口

它一般以mysql 用户,mysql组来运行

4. 磁盘格式化之后把空间分为了两个区域:一个叫“元数据区域”,一个叫“数据区域”。数据区域还会划分成磁盘块。

5.安装完之后在客户端命令行界面中输入:mysql就可以进出mysql数据库了

########################################################################################

以上都是基于安装红帽自带的RPM包的过程。


6.mysql命令的选项

-u 指定用户名(默认是root,这个用户是mysql的root。不是系统的。它的权限是最高的)

-p (建议是-p后边不要输入密码,这样所有人可见,不安全。直接回车即可,使用交互的方式输入密码)

-h 指定主机

修改root密码

第一次修改密码: mysqladmin -u root    password ‘123123‘ 回车

第二次修改密码: mysqladmin -u root -p password ‘123123‘ 回车后输入原密码

注意在第二条命令中-p后边不要有空格,直接接密码即可


7.mysql客户端交互有两种模式

交互式模式

批量处理模式(执行mysql脚本的)。

交互式模式中的命令类别:

客户端命令:?或是help获取命令帮助

服务端命令:

都必须使用语句结束符,默认为分号

8. 关系数据库对象:库 、表、索引、试图、约束、存储过程、存储函数、触发器、游标、用户。

9.mysql的库其实是对应在/var/lib/mysql/下的相对应的目录

10.表

他是由行和列组成

表:又叫做一个实体

行:raw

列:field

我们要网表里插入一个数据,需要定义字段名称,数据类型,类型修饰。

数据类型:

字符型:

CHAR

VARCHAR

BINARY

VARBINARY

TEXT

BLOB

数值型:

整型:

精确数值型

整型

十进制

近似数值:

浮点型

日期:

布尔型:


11.

DDL:定义数据对象的

命令:CREATE ALTER DROP

DML:操作语言

命令:INSERT UPDATA DELETE

DCL:控制语言

命令:GRANT REVOKE

这些命令是不区分大小写的


12.库的相关操作

格式: create database 库名;

查看有哪些库 :show databases;

创建一个库 :create database pangbing;

删除一个数据库:drop database pangbing;

use mysql:表示使用mysql这个数据库,创建表时不指定数据库的话就在这个库里创建表。

否则在创建表的时候要使用:create  table 库名.表名


13.表的相关操作

格式:create table 表名(字段的定义);

查看默认库中的表:show tables;

查看特定数据中的表: show tables from 库名;

查看表的结构:desc 表名;

删除表:drop table 表名;

修改表:ALTER TABLE 表名;

修改的方法有这么几种

MODIFY 修改某个字段 (把字段的属性改改,字段的名字不变)

CHANGE 改变某个字段的 (字段名称改变)

ADD     添加一个字段

DROP     删除字段

help alter table:查看帮助


14.创建msql用户

create user ‘用户名‘@‘主机‘ identified by ‘密码‘

例子:mysql> create user ‘pangbing‘@‘192.168.3.110‘ identified by ‘123‘;

//上边的IP地址是允许访问的主机地址

##############################################################

特别注意:在授权用户权限后,登陆时一定要指定登陆的mysql服务器

-h 要登录的服务器IP地址      登陆: mysql -u pangbing -h 192.168.3.110 -p

##############################################################

删除mysql用户

drop user ‘用户名‘@‘host‘

例子:drop user ‘bing‘@‘%‘;


15.给用户授权:

注意;如果用户不存在,就会自动创建授权的用户

GRANT 权限列表 ON 库名.表名 TO ‘用户名‘@‘主机地址‘ IDENTIFIED BY ‘密码‘


取消授权:

REOVKE 权限列表 ON 库名.表名 FROM ‘用户名‘@‘主机地址‘

<1>权限列表:用于列出授权使用的各种数据库操作,以逗号进行分隔

例如:select insert updata。使用all privileges代表所有权限,可授权任何操作。

<2>IDENTIFIED BY :用于设置用户的密码,如果在授权时省略,表示密码为空。

<3>主机地址:这时允许哪些主机连接服务器器,也可以写成IP(客户端的地址)

‘%‘代表任意主机

例子:grant all  on 库名.* to ‘pangbing‘@‘%‘ identified by ‘密码‘


16.查看权限列表:

mysql> show grants for ‘pangbing‘@‘%‘;

select user,host  from mysql.user;

17.默认情况下,root用户是不具备远程登录的权限的,这也是基于安全考虑;

mysql> Grant all privileges on *.* to ‘root‘@‘%‘ identified by ‘123456‘ with grant option;


18.查看mysql支持的引擎

mysql> show engines;

时间: 2024-09-29 15:40:57

mysql组织结构的相关文章

深入浅出分析MySQL索引设计背后的数据结构

在我们公司的DB规范中,明确规定: 1.建表语句必须明确指定主键 2.无特殊情况,主键必须单调递增 对于这项规定,很多研发小伙伴不理解.本文就来深入简出地分析MySQL索引设计背后的数据结构和算法,从而可以帮你释疑如下问题: 1.为什么innodb表需要主键? 2.为什么建议innodb表主键是单调递增? 3.为什么不建议innodb表主键设置过长? B-tree(多路搜索树,并不是二叉的)是一种常见的数据结构.使用B-tree结构可以显著减少定位记录时所经历的中间过程,从而加快存取速度.B通常

mysql B+Tree索引

原文地址:http://blog.codinglabs.org/articles/theory-of-mysql-index.html 数据结构及算法基础 索引的本质 MySQL官方对索引的定义为:索引(Index)是帮助MySQL高效获取数据的数据结构.提取句子主干,就可以得到索引的本质:索引是数据结构. 我们知道,数据库查询是数据库的最主要功能之一.我们都希望查询数据的速度能尽可能的快,因此数据库系统的设计者会从查询算法的角度进行优化.最基本的查询算法当然是顺序查找(linear searc

剖析Mysql的InnoDB索引

摘要: 本篇介绍下Mysql的InnoDB索引相关知识,从各种树到索引原理到存储的细节. InnoDB是Mysql的默认存储引擎(Mysql5.5.5之前是MyISAM,文档).本着高效学习的目的,本篇以介绍InnoDB为主.少量涉及MyISAM作为对照. 这篇文章是我在学习过程中总结完毕的.内容主要来自书本和博客(參考文献会给出).过程中增加了一些自己的理解.描写叙述不准确的地方烦请指出. 1 各种树形结构 本来不打算从二叉搜索树開始,由于网上已经有太多相关文章,可是考虑到清晰的图示对理解问题

Spring MVC +MyBatis +MySQL 登录查询Demo 解决了mybatis异常【转】

1.整体结构 2.准备工作 数据库: --Mysql 5.6 创建数据库 wolf 1 CREATE DATABASE wolf; 创建用户表 user 1 2 3 4 5 6 create table user( id int  AUTO_INCREMENT  primary key, name varchar(25) not null, pwd varchar(20) not null, create_time date ) 向表中插入测试数据 1 2 3 4 insert into use

Spring+SpringMVC+Mybatis+Mysql整合实例【转】

本文要实现Spring+SpringMVC+Mybatis+Mysql的一个整合,实现了SpringMVC控制访问的页面,将得到的页面参数传递给Spring中的Mybatis的bean类,然后查找Mysql数据的功能,并通过JSP显示出来.建议可以先看笔者另一文章Mybatis与Spring整合创建Web项目 .笔者觉得整合过程中问题比较多的还是Spring+Mybatis的整合,SpringMVC的整合还是比较简单. Spring        Spring 是一个开源框架, Spring 是

mysql 学习基础知识汇总

DBMS模型: 层次模型 网状模型 关系模型 以文件来存取数据的困难:数据冗余和不一致性,数据访问困难,数据孤立,数据完整性问题,原子性问题,并发访问问题,安全性问题 XML(扩展标机语言) 关系模型: 关系模型 E-R实体-关系模型 对象模型 半结构化数据模型 文件:对于文件来说可以从三个层次来分析 1.表示层 文件 2.逻辑层 文件系统:存储引擎 3.物理层 元数据 数据块 E-R图的表示方法 实体:  矩形表示 属性:   椭圆表示 联系:   菱形表示 各实体间的对应关心:1:1    

数据库为什么要用B+树结构--MySQL索引结构的实现

B+树在数据库中的应用 { 为什么使用B+树?言简意赅,就是因为: 1.文件很大,不可能全部存储在内存中,故要存储到磁盘上 2.索引的结构组织要尽量减少查找过程中磁盘I/O的存取次数(为什么使用B-/+Tree,还跟磁盘存取原理有关.) 3.局部性原理与磁盘预读,预读的长度一般为页(page)的整倍数,(在许多操作系统中,页得大小通常为4k) 4.数据库系统巧妙利用了磁盘预读原理,将一个节点的大小设为等于一个页,这样每个节点只需要一次I/O就可以完全载入,(由于节点中有两个数组,所以地址连续).

MySQL 对于大表(千万级),要怎么优化呢?

提问:如何设计或优化千万级别的大表?此外无其他信息,个人觉得这个话题有点范,就只好简单说下该如何做,对于一个存储设计,必须考虑业务特点,收集的信息如下:1.数据的容量:1-3年内会大概多少条数据,每条数据大概多少字节: 2.数据项:是否有大字段,那些字段的值是否经常被更新: 3.数据查询SQL条件:哪些数据项的列名称经常出现在WHERE.GROUP BY.ORDER BY子句中等: 4.数据更新类SQL条件:有多少列经常出现UPDATE或DELETE 的WHERE子句中: 5.SQL量的统计比,

MYSQL&lt;五&gt;

-- ########## 01.LIMIT的使用和分页 ########## INSERT INTO studentinfo VALUES(NULL, '刘备', '男', 35), (NULL, '关羽', '男', 30), (NULL, '张飞', '男', 25), (NULL, '貂蝉', '女', 15), (NULL, '吕布', '男', 33), (NULL, '甄姬', '女', 22), (NULL, '董卓', '男', 55); SELECT * FROM stude