数据库管理系统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]数据库基础知识的更多相关文章

  1. MySQL数据库基础知识及优化

    MySQL数据库基础知识及优化必会的知识点,你掌握了多少? 推荐阅读: 这些必会的计算机网络知识点你都掌握了吗 关于数据库事务和锁的必会知识点,你掌握了多少? 关于数据库索引,必须掌握的知识点 目录 ...

  2. 阿里面试官必问的12个MySQL数据库基础知识,哪些你还不知道?

    数据库基础知识 1.为什么要使用数据库 (1)数据保存在内存 优点: 存取速度快 缺点: 数据不能永久保存 (2)数据保存在文件 优点: 数据永久保存 缺点: 1)速度比内存操作慢,频繁的IO操作. ...

  3. Java基础86 MySQL数据库基础知识

    本文知识点(目录): 1.MySQL数据库的概述    2.MySQL数据库的管理[对数据库的操作](查询.删除.创建数据库,以及查询和修改数据库的编码模式)    3.表的管理[对数据库 表的操作] ...

  4. MySQL数据库基础知识复习

    现在是2020年寒假,这也是新年写的第一篇博客,用了十几天的时间自学了数据库基础部分,想总结一下得失同时并通过写博客来复习前面学的知识点. 个人: 1.本来是计划一周学完基础部分的178p但没能完成这 ...

  5. Mysql数据库基础知识

    什么是Mysql数据库 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下公司.MySQL 最流行的关系型数据库管理系统,在 WEB 应用方面MySQ ...

  6. mysql数据库基础知识和认识

    mysql 创建一个用户 hail,密码 hail,指定一个数据库 haildb 给 hail mysql -u root -ppassworduse mysql;insert into user(h ...

  7. python week09 Mysql 数据库基础知识

    第一篇:初识数据库 注:<基础概念,不再赘述,点开链接查看> 第二篇:库相关操作 一 系统数据库 information_schema: 虚拟库,不占用磁盘空间,存储的是数据库启动后的一些 ...

  8. Mysql数据库基础知识(全)

    前言:本博文为个人笔记,记录了Mysql的一些基本操作,一般掌握本博文就可以了解数据库.表.数据项的增删改查,希望对大家的学习有所帮助. 首先下载PHPSTUDY,将Mysql配置为系统变量. 具体操 ...

  9. Mysql之基础知识笔记

    Mysql数据库基础知识个人笔记 连接本地数据库: mysql -h localhost -u root -p 回车输入数据库密码 数据库的基础操作: 查看当前所有的数据库:show database ...

随机推荐

  1. 【Python】[面向对象高级编程] 多成继承,定制类,使用枚举

    1.多成继承 class SmallDog(Animal,Dog) pass MixIn就是一种常见的设计. 2.定制类类似__slots__这种形如 __xxx__ 的变量或者函数名,在python ...

  2. 正确遍历ElasticSearch索引

    1:ElasticSearch的查询过程 2:由ES查询模式引起的深度分页问题 3:如何正确遍历索引中的数据 ElasticSearch的查询过程 es的数据查询分两步: 第一步是的结果是获取满足查询 ...

  3. Advanced Office Password Recovery如何设置快捷方式

    一般软件安装成功之后都会在桌面上形成快捷方式以方便使用,但是一些用户发现Advanced Office Password Recovery这种office密码破解工具安装成功后桌面上没有出现快捷方式, ...

  4. 解决:error: .repo/manifests/: contains uncommitted changes

    repo sync同步时提示出错:          error: .repo/manifests/: contains uncommitted changes 解决方法: 1.cd 进入.repo/ ...

  5. Python 安装easy_install详解

    easy_install 真的特别方便.我之前安装pip.wheel.bs4.requests等都是用python setup.py install 安装,操作步骤还不算很烦(但是对比easy_ins ...

  6. BZOJ 3809: Gty的二逼妹子序列

    3809: Gty的二逼妹子序列 Time Limit: 80 Sec  Memory Limit: 28 MBSubmit: 1387  Solved: 400[Submit][Status][Di ...

  7. SingleTon单例模式总结篇

    在Java设计模式中,单例模式相对来说算是比较简单的一种构建模式.适用的场景在于:对于定义的一个类,在整个应用程序执行期间只有唯一的一个实例对象. 一,懒汉式: 其特点是延迟加载,即当需要用到此单一实 ...

  8. JBoss 系列十四:JBoss7/WildFly如何加载外部的文件或properties文件

    http://www.tuicool.com/articles/M7ZR3y 原文 http://blog.csdn.net/kylinsoong/article/details/12623997 主 ...

  9. 触发器运用示例---laobai

    1 触发器 概念:trigger.逻辑对象的一种.当dml的增删改语句执行时,自动触发一系列动作. 分类:dml触发器.ddl触发器(很少见) sql:ddl,dml,dcl 按触发的时间分: 语句执 ...

  10. MVC是一个经典的设计模式

    MVC的架构:具体是模型(Model).视图(View)和控制器(Controller). MVC模式的目的是实现一种动态的程式设计,使后续对程序的修改和扩展简化,并且使程序某一部分的重复利用成为可能 ...