mysql组织结构
<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;
mysql组织结构的更多相关文章
- Maven+Spring+Spring MVC+MyBatis+MySQL,搭建SSM框架环境【转】
项目建设完成之后的结构: 数据库的表结构如下: 环境建设:搭建Maven环境.Tomcat环境.需要MySql 数据库支持,使用的编程工具Eclipse (这些是前期准备): 开始创建工程: 1.创建 ...
- MySQL的InnoDB索引原理详解
摘要 本篇介绍下Mysql的InnoDB索引相关知识,从各种树到索引原理到存储的细节. InnoDB是Mysql的默认存储引擎(Mysql5.5.5之前是MyISAM,文档).本着高效学习的目的,本篇 ...
- 【转】MySQL索引背后的数据结构及算法原理
摘要 本文以MySQL数据库为研究对象,讨论与数据库索引相关的一些话题.特别需要说明的是,MySQL支持诸多存储引擎,而各种存储引擎对索引的支持也各不相同,因此MySQL数据库支持多种索引类型,如BT ...
- [转]MySQL索引背后的数据结构及算法原理
摘要 本文以MySQL数据库为研究对象,讨论与数据库索引相关的一些话题.特别需要说明的是,MySQL支持诸多存储引擎,而各种存储引擎对索引的支持也各不相同,因此MySQL数据库支持多种索引类型,如BT ...
- MySQL索引背后的数据结构及算法原理【转】
本文来自:张洋的MySQL索引背后的数据结构及算法原理 摘要 本文以MySQL数据库为研究对象,讨论与数据库索引相关的一些话题.特别需要说明的是,MySQL支持诸多存储引擎,而各种存储引擎对索引的支持 ...
- MySQL索引背后的数据结构及算法原理
摘要 本文以MySQL数据库为研究对象,讨论与数据库索引相关的一些话题.特别需要说明的是,MySQL支持诸多存储引擎,而各种存储引擎对索引的支持也各不相同,因此MySQL数据库支持多种索引类型,如BT ...
- 基于内存,redis,mysql的高速游戏数据服务器设计架构
转载请注明出处,欢迎大家批评指正 1.数据服务器详细设计 数据服务器在设计上采用三个层次的数据同步,实现玩家数据的高速获取和修改. 数据层次上分为:内存数据,redis数据,mysql数据 设计目的: ...
- MySQL的InnoDB索引原理详解 (转)
摘要: 本篇介绍下Mysql的InnoDB索引相关知识,从各种树到索引原理到存储的细节. InnoDB是Mysql的默认存储引擎(Mysql5.5.5之前是MyISAM,文档).本着高效学习的目的,本 ...
- [纯干货] MySQL索引背后的数据结构及算法原理
摘要 本文以MySQL数据库为研究对象,讨论与数据库索引相关的一些话题.特别需要说明的是,MySQL支持诸多存储引擎,而各种存储引擎对索引的支持也各不相同,因此MySQL数据库支持多种索引类型,如BT ...
随机推荐
- Tomcat(1):安装Tomcat
一,安装Tomcat服务器 1,下载tomcat网址: http://tomcat.apache.org/ 2,找到Download 3,下载 4:下载完成后,解压到任意目录 5:解压完成后得到目录 ...
- 看看线程特有对象ThreadLocal
作用:设计线程安全的一种技术. 在使用多线程的时候,如果多个线程要共享一个非线程安全的对象,常用的手段是借助锁来实现线程的安全.线程安全隐患的前提是多线程共享一个不安全的对象 ,那么有没有办法让线程之 ...
- JavaScript对象之面向对象
在js中创建对象的两种方式 1.new一个Objecteg: var flower = new Object(); flower.stuname = "呵呵"; flower.ag ...
- [Java Web 王者归来]读书笔记2
第二篇 基础篇 第三章 深入Servlet技术 1 浏览器的request http数据报中包含一些关键信息,如访问方式.所用的http版本.所用的浏览器.当前的页面地址等信息 2 http查询数据方 ...
- 万字教你如何用 Python 实现线性规划
摘要:线性规划是一组数学和计算工具,可让您找到该系统的特定解,该解对应于某些其他线性函数的最大值或最小值. 本文分享自华为云社区<实践线性规划:使用 Python 进行优化>,作者: Yu ...
- Spring Boot发布2.6.2、2.5.8:升级log4j2到2.17.0
12月22日,Spring官方发布了Spring Boot 2.5.8(包括46个错误修复.文档改进和依赖项升级)和2.6.2(包括55个错误修复.文档改进和依赖项升级). 这两个版本均为缺陷修复版本 ...
- layer 如何加上关闭框
layer 如何加上关闭框
- 为什么需要两次eval才转化为需要的JSON数据,好奇怪
为什么需要两次eval才转化为需要的JSON数据,好奇怪
- float浮动的详细总结
float浮动的详细总结 1.定位方案 在css中,有4种常用的方法对元素进行定位和布局: normal flow:标准流.文档流: position:定位(relative.absolute.fix ...
- FastAPI(六十五)实战开发《在线课程学习系统》基础架构的搭建
在之前三篇,我们分享的就是需求的分析,基本接口的整理,数据库链接的配置.这次我们分享项目的基本框架,目录结构如下: common目录 通用的目录,一些通用的处理放在这里 models目录 数据库相关的 ...