[mysql]数据库基础知识
数据库管理系统DBMS
软件
bin
config
db (保存数据)
写程序:
数据库在本地
找到目录
添加数据
数据库在远程
socket连接上远程机器
socket发送命令
需要做的事情
程序
socket客户端
数据
socket服务端
规则
add |内容
delete | 内容
........
socket服务端和客户端用户认证,授权,限制
远程连接数据库要做的这些事情被一些人整合成一个软件,这些软件就是数据库软件,例如:
oracle,mysql,sqlerver,sqlite,access......
下载安装
1.下载
2.解压
3.运行服务器端
4.客户端连接
#将mysql服务器端制作成一个 windows服务
net start mysql
net stop mysql
===, 打开服务管理
×××××××××××正题××××××××××××××××××××××××××××××××××××××××
××××××××××××mysql×××××××××××××
1.概念
数据库 >> 文件夹
数据库表 >> 文件夹里的文本文件
数据行 >> 文件中的一行数据
2.启动服务器
net start mysql
或者
/etc/init.d/mysql start
客户端连接
mysql -u root -p
3. 基础操作命令
show databases; # 查看当前mysql都有哪些数据,根目录里有哪些文件夹
create database 数据库名; #创建文件夹
use 数据库名; #使用选中的数据库,进入数据库目录
show tables; #查看当前数据库下都有哪些表
create table 表名 (nid int,name varchar(22),pwd varchar(64)); #创建数据库表
select × from 表名; # 查看表中的所有数据
insert into 表名(nid,name,pwd) values(1,'zhangw','1234'); # 插入数据
4.用户授权
用户管理特殊命令:
创建用户
create user '用户名'@' ip地址' identfied by '密码';
删除用户
drop user '用户名'@'IP地址';
修改用户
rename user '用户名'@'IP地址' to '新用户名'@'IP地址';
修改密码
set user '用户名'@'ip地址' = Password('新密码')
权限
默认,没有任何权限
grant 权限 on 数据库.表 to '用户'@'ip地址' ---授权
5.远程连接
不再重复操作,直接发送命令给服务器
远程操作的内容:数据库,表,行
开户和授权
密码,必须用
其他,推荐用
客户端连接
mysql -u root -h 192.168.1.1 -p #-h 指定主机
6.SQL语句
数据库
show databases;
create database 数据库名称 ;
create database 数据库名称 default charset utf8 collate utf8_general_ci;
use 数据库名称;
drop database 数据库名称;
表
show tables;
desc tb1;
create table tb1(nid int,name varchar(10));
# 主键
不能为null,
不能重复,
一张表只有一个主键(可以多列组成主键)
#用法
nid int auto_increment primary key
# 创建tb5, nid做主键,name 变长16,age 默认19,选用innode引擎,默认编码utf8
create table tb5
(
nid int not null auto_inctement primary key,
name varchar(16),
age int default 19
)engine = innodb default charset=utf8;
# 外键foreign key
7.字符串
定长 char(22)
查找速度快,浪费空间
变长 varchar(22)
查找速度慢,节省空间
8.二进制数据
TinyBlob,Blob,MediumBlob,LongBlob
上传文件
Blob, 强制二进制方式
varchar(65)
9. 时间
DATE
YYYY-MM-DD(1000-01-01/9999-12-31)
TIME
HH:MM:SS('-838:59:59'/'838:59:59')
YEAR
YYYY(1901/2155)
DATETIME
YYYY-MM-DD HH:MM:SS(1000-01-01 00:00:00/9999-12-31 23:59:59 Y)
TIMESTAMP
YYYMMDD HHMMSS(1970-01-01 00:00:00/2037 年某时)
10.连表操作
select * form a,b where a.x = b.o
join
left join
select * from a LEFT OUTER JOIN b ON a.x = b.o
inner join
select * from a inner JOIN b ON a.x = b.o
[mysql]数据库基础知识的更多相关文章
- MySQL数据库基础知识及优化
MySQL数据库基础知识及优化必会的知识点,你掌握了多少? 推荐阅读: 这些必会的计算机网络知识点你都掌握了吗 关于数据库事务和锁的必会知识点,你掌握了多少? 关于数据库索引,必须掌握的知识点 目录 ...
- 阿里面试官必问的12个MySQL数据库基础知识,哪些你还不知道?
数据库基础知识 1.为什么要使用数据库 (1)数据保存在内存 优点: 存取速度快 缺点: 数据不能永久保存 (2)数据保存在文件 优点: 数据永久保存 缺点: 1)速度比内存操作慢,频繁的IO操作. ...
- Java基础86 MySQL数据库基础知识
本文知识点(目录): 1.MySQL数据库的概述 2.MySQL数据库的管理[对数据库的操作](查询.删除.创建数据库,以及查询和修改数据库的编码模式) 3.表的管理[对数据库 表的操作] ...
- MySQL数据库基础知识复习
现在是2020年寒假,这也是新年写的第一篇博客,用了十几天的时间自学了数据库基础部分,想总结一下得失同时并通过写博客来复习前面学的知识点. 个人: 1.本来是计划一周学完基础部分的178p但没能完成这 ...
- Mysql数据库基础知识
什么是Mysql数据库 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下公司.MySQL 最流行的关系型数据库管理系统,在 WEB 应用方面MySQ ...
- mysql数据库基础知识和认识
mysql 创建一个用户 hail,密码 hail,指定一个数据库 haildb 给 hail mysql -u root -ppassworduse mysql;insert into user(h ...
- python week09 Mysql 数据库基础知识
第一篇:初识数据库 注:<基础概念,不再赘述,点开链接查看> 第二篇:库相关操作 一 系统数据库 information_schema: 虚拟库,不占用磁盘空间,存储的是数据库启动后的一些 ...
- Mysql数据库基础知识(全)
前言:本博文为个人笔记,记录了Mysql的一些基本操作,一般掌握本博文就可以了解数据库.表.数据项的增删改查,希望对大家的学习有所帮助. 首先下载PHPSTUDY,将Mysql配置为系统变量. 具体操 ...
- Mysql之基础知识笔记
Mysql数据库基础知识个人笔记 连接本地数据库: mysql -h localhost -u root -p 回车输入数据库密码 数据库的基础操作: 查看当前所有的数据库:show database ...
随机推荐
- C#系列——记一次业务需求:对象的深拷贝
这篇随笔着实在意料之外,主要是源于上周开发BS的一个业务,需要用到对象的深拷贝.说的直白一点,就是将对象内存分配区和引用完全拷贝一份新的.这种需求以前就遇到过,怎么解决的已经记不清了.这次趁着这个机会 ...
- C 语言学习 第三次作业总结
本次作业内容: For循环的使用 If判断语句的使用 常用数学运算表达式的使用 数学函数库中几个常见函数的使用及自我实现 将操作代码提交到coding 作业总结: For循环是C语言中一种基本的循环语 ...
- 【jQuery api】 $.type(obj)
用来获取JavaScript数据类型[[Class]]的对象 <!DOCTYPE html> <html> <head> <script src=" ...
- Swift学习笔记-ARC
Swift使用自动引用计数(ARC)机制来跟踪和管理你的应用程序的内存.通常情况下,Swift 内存管理机制会一直起作用,你无须自己来考虑内存的管理.ARC 会在类的实例不再被使用时,自动释放其占用的 ...
- iOS常用 --- NSDictionary 与 NSMutableDictionary
一.NSDictionary 字典的两种创建方法 NSDictionary *dic1 =[[NSDictionary alloc]init]; 2 // 或: 3 NSDictionary *dic ...
- ES6新特性:Javascript中内置的延迟对象Promise
Promise的基本使用: 利用Promise是解决JS异步执行时候回调函数嵌套回调函数的问题, 更简洁地控制函数执行流程: 通过new实例化Promise, 构造函数需要两个参数, 第一个参数为函 ...
- iOS多线程的详情使用示例--简进祥
大家都知道,在开发过程中应该尽可能减少用户等待时间,让程序尽可能快的完成运算.可是无论是哪种语言开发的程序最终往往转换成汇编语言进而解释成机器码来执行.但是机器码是按顺序执行的,一个复杂的多步操作只能 ...
- 重写保存按钮save事件
_saveActionEventHandler:function(event,value){ if (!_self.fireEvent("saveBefore")) return; ...
- 防DDOS攻击SHELL脚本
最近一段时间服务器频繁遭到DDOS攻击,目前只能通过封IP来源来暂时解决.IP不源变化多端,光靠手工来添加简直是恶梦,想了个方法,用SHELL来做. 比较简单,但很实用:) 以下内容根据作者原文进行适 ...
- win8.1系统的安装方法详细图解教程
win8.1系统的安装方法详细图解教程 关于win8.1系统的安装其实很简单 但是有的童鞋还不回 所以今天就抽空做了个详细的图解教程, 安装win8.1系统最好用U盘安装,这样最方便简单 而且系统安装 ...