Mysql教程(Windows)

学习笔记及知识总结,持续更新中

一.
数据库分类

http://www.jb51.net/article/139219.htm  安装说明

https://www.cnblogs.com/xyabk/p/8967990.html  安装说明

1. 网络数据库

2. 层级数据库

3. 关系数据库

另一种区分方式:基于介质

存储介质分为两种:磁盘和内存

关系型数据库:存储在磁盘中

非关系型数据库:存储在内存中

关系型数据库

关系数据结构:数据以什么方式存储(二维表

关系操作集合:关联和管理对应的存储数据(SQL指令

关系完整性约束:数据内部有对应的关联关系,数据与数据之间也有对应的关联联系

表内约束:对应的具体列只能放对应的数据(不能乱放)

表间约束:(外键)

扫描二维码关注公众号,回复: 1011614 查看本文章

典型关系型数据库:

小型:Microsoft AccessSQLite

中型:SQL ServerMysql

大型:OracleDB2

二.SQL介绍

1. 数据查询语言DQL    专门用于查询数据select/show

2. 数据操作语言DML    专门用于写数据 insert/update/delete

3. 事务处理语言TPL     专门用于事务安全处理transaction/

4. 数据控制语言DCL     专门用于权限管理grant/revoke

5. 数据定义语言DDL     专门用于结构管理create/dropalter

三.Mysql

启动和停止MySQL服务

C/S结构  客户端 服务端

服务端对应的软件Mysqld.exe

1. 通过命令行的形式cmd

net start 服务(Mysql):开启服务

net stop Mysql:关闭服务

2. 系统服务方式

前提:安装MySQL时将其添加到Windows的服务中

(计算机--管理--服务)或命令行  service.msc

找到mysql打开服务

登录和退出MySQL服务

通过客户端mysql与服务器进行连接认证,就可以操作

通常:客户端与服务端不在一台电脑上

登录

1. 找到MySQL.exe(通过cmd如果安装时指定了mysql.exe所在路径为环境变量,就可以直接访问;如果没有,进入到mysql所在路径)

2. 输入对应的服务器地址 -h:host  -h[IP 地址/域名]

3. 输入服务器中mysql监听的端口  -P:port  -P:3306

4. 输入用户名 -u:username -u:root

5. 输入密码  -p:password  -p:root

连接认证基本语法:

mysql.exe/mysql   -h主机地址  -P3306  -u用户名  -p密码

例:mysql.exe -hlocalhost -P3306  -utoor  -proot

注意:通常端口都可以默认:mysql默认3306

密码的输入可以先输入-p,直接换行,然后以密文方式输如密码

例:mysql -hlocalhost  -uroot  -p

Enter pqssword:****

退出

断开与服务器的连接

建议使用SQL提供的指令

exit

\q

quit:

MySQL服务端架构

以下几层:

1. 数据库管理系统(最外层)DBMS 专门管理服务端的所有内容

2. 数据库(第二层):DB 专门用于存取数据的仓库(可以有多个)

3. 二维数据表(第三层):Table 专门用于存储具体实体的数据

4. 字段(第四层)fileld  具体存储某种类型的数据(实际存储单元)

数据库中常用的关键字

row:行

column:列(field

数据库基本操作

-- xxxx   (注释)

创建数据库

基本语法:create datebase数据库名字【库选项】

库选项:数据库的相关属性

字符集:charset 字符集 代表当前数据库下的所有表存储的数据默认指定的字符集(如果不指定,采用DBMS默认的UTF-8

create database 数据库名称 charset 字符集名称;

create database myfatabase charset gbk

校对集:collate 校对集  随字符集

显示数据库

每当用户通过sql指令创建一个数据库,系统就会产生一个对应的存储数据的文件夹(通常存储在安装目录是data下)

并且每个数据库文件夹下都有一个opt文件,保存的数对应的数据库选项

显示全部

基本语法:show databases

显示部分

基本语法:show databases like ‘匹配模式’;

_:匹配当前位置单个字符

%:匹配指定位置多个字符

显示数据库创建语句

基本语法:show create database 数据库名字;

看到的指令并非原始指令,已经被系统加工过

选择数据库

如果要操作数据必须要进入到对应的数据库才行

基本语法:use 数据库名字

修改数据库

修改数据库 库选项(字符集和校对集)

基本语法:alter database 数据库名字 charset=字符集

mysql5.5之前rename 可修改数据库名字,5.5后不行

删除数据库

基本语法:drop database 数据库名字;

删除虽简单,不要轻易删,做好安全操作,确保数据没问题。

对应的文件夹和opt文件都被删除了

数据表操作

创建数据表

普通创建表

基本语法:create table 表名(字段名 字段类型[字段属性],字段名 字段类型[字段属性].....[表选项];

表必须放在数据库下,两种方式将表放在指定数据库下

1. 在数据表名字前面加上数据库名字,用.”连接   数据库.数据表

 create table mydatabase.class(name varchar(10));

2.在创建数据表前进入到某个具体数据库   use 数据库名字;

 use database

 create table newtable(name varchar(10));

默认创建到当前所在数据库

表选项,与数据库选项类似

engine:存储引擎,MySQL提供的具体的存储数据方式,默认innodb5.5以前默认myisam

charset:字符集,只对当前自己表有效(级别比数据库高)

collate:校对集,只对当前自己表有效

复制已有表结构

从已经存在的表复制(只复制结构,表中有数据不复制)

基本语法:create table新表名 like 表名;  只要使用数据库.表名,就可以在任何数据库下访问其他数据库的表名

use test(进入test数据库)

create table teacher like mydatabase.teacher

alter user ‘root’@’localhost’ identified with mysql_native_password by ‘password’

显示数据表

猜你喜欢

转载自blog.csdn.net/lxy_python/article/details/80301512