数据库对比学习

mysql和mongodb对比

  mysql (关系型) mongodb (非关系型)
  database database
  table collection
  row 一行数据 (一个实体记录) 文档(字典)
  固定字段 不固定字段
建立库 create database 库名 use 数据库名
查看全部库 show databases show dbs
切换库 use 数据库名 use 数据库名
查看当前库 select database() db 或 db.getName()
删除库 drop database 数据库名 db.dropDatabase()
建立表/集合 create table 表名(字段1 数据类型,字段2,数据类型) createCollection('集合名') / db.集合名.insert(文档)
查看全部表/集合 show tables show collections
删除表/集合 drop table 表名 db.集合名.drop()

 

mysql

使用mysql

windows:mysql

  1. 启动mysql (管理员)linux

    net start mysql57 (mysql57: 个人数据库实例名)redis

  2. 链接mysqlsql

    mysql -u root -pmongodb

linux:数据库

  1. 启动mysqlwindows

    sudo service mysql start服务器

  2. 链接mysqlui

    mysql -u root -pspa

  3. 退出登录

    exit 或 quit

检查mysql状态: sudo service mysql status

开启mysql服务器:sudo service mysql start

关闭mysql服务器:sudo service mysql stop

操做mysql

操做数据库

create database 数据库名; : 建立数据库

show databases; : 查看全部数据库

use 数据库名; : 切换数据库

select database(); : 查看当前数据库

drop database 数据库名; : 删除数据库

操做表格

create table 表名 : 建立表

show tables; : 查看全部表格

drop table 表名; : 删除表格

修改表:

  1. 修改表名

    alter table 旧表名 rename 新表名

  2. 修改字段名

    alter table 表名 change 旧字段名 新字段名 数据类型

  3. 修改字段的数据类型

    alter table 表名 modify 字段名 数据类型

  4. 添加字段

    alter table 表名 add 字段名 数据类型 {约束条件} {first | after 已存在字段名}

  5. 删除字段

    alter table 表名 drop 字段名

  6. 修改字段的排列位置

    alter table 表名 modify 字段1 数据类型 first | after 字段2 数据类型

    first : 设置成第一个          after 字段2: 放在字段2后面  
  7. 删除表的外键约束

    alter table 表名 drop foreign key 外键约束名

  8. 删除表

    #删除没有被关联的表 语法规则:DROP TABLE [IF EXISTS] 表1,表2... #删除被其余表关联的的表 直接删除会出现错误的,操做: 先解除关联 再进行删除

redis

使用redis

windows 和 linux

启动redis  :  redis-server

链接redis : redis-cli

操做redis

redis默认有16个集合 ,db=0~15

select db(0-15) : 选择数据库

flushdb : 清空当前数据库 (删除当前数据库中全部键)

flushall : 清空全部数据库 (删除全部数据库中的键)

keys * : 查看全部键 keys a* 查找以a开头的键 (匹配)

del key : 删除键

expire key seconds : 给指定的key添加过时时间,单位S

ttl key : 以秒为单位,返回该键剩余时间

exists key : 判断一个键是否存在

 

mongodb

使用mongodb

windows:

  1. 启动mongodb (管理员)

    mongod.exe --dbpath=D:\应用软件\mysql千峰\mongodb\data\db (路径是本身添加的目录data\ 并排子目录db 和log )

  2. 链接mongodb (另开一个终端)

    mongo.exe

linux:

  1. 启动mongodb

    systemctl start mongodb

    (netstat -plntu: 检查MongoDB是否已经启动在27017端口号上)

  2. 链接mongodb

    mongo

操做mongodb

操做数据库

use 数据库名 : 建立或切换数据库,不存在则建立

show dbs : 查看全部数据库 (新建立的数据库没有插入数据不会显示)

db 或 db.getName : 查看当前使用的数据库

db.dropDatabase() : 删除当前数据库 ,db表明当前数据库

exit : 断开链接 help: 查看API

操做集合

建立集合 :

  1. db.createCollection("集合名称") : 建立空集合

    db.createCollection('集合名', 文档) : 建立并插入数据

  2. db.集合名称.insert(文档) : 建立并插入数据

查看当前数据库全部集合: show collections

删除集合 : db.集合名称.dorp()

相关文章
相关标签/搜索