软件技术-零基础-MangoDB数据库存储

zhyuzh3d · · 2173 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

欢迎关注我的专栏( つ•̀ω•́)つ【人工智能通识】


如何将用户的姓名、邮箱数据存储到服务器的数据库中?首先我们要了解和安装数据库。

上一篇文章软件技术-零基础网页和Golang服务器数据通信

什么是数据库

数据库是什么?

简单的理解,excel表格就是数据库,我们可以通过excel打开它往里面写入各种数据,也可以读取数据和删除数据,还能在excel中搜索,比如找出所有叫Tom的人的数据资料。

数据库就是一种数据的存储、读写、查找机制,可以看做就是一种软件

数据最基础的操作是CURD,即创建(Create)、更新(Update)、读取(Retrieve)和删除(Delete)。

数据可以划分为两种,结构化数据Structured和非结构化数据Unstructured,excel表那种整齐的数据都是结构化的,每个数据都包含姓名、性别、身高...等固定字段;但是像小说、评论文字、音视频这种就不是结构化,数据格式不统一不确定。

对于结构化数据可以使用标准的SQL语言(Structured Query Language结构化查询语言)对数据进行操作,这类数据库也叫做关系型数据库,知名的有:

  • Oracle RDBMS数据库,一种高性能的商业化关系型数据库软件,售价昂贵,多用于政府和大型企业。
  • 微软的SQL Server,售价数万甚至数十万,虽然有免费的开发者版本,但并不能在正式部署时候使用。
  • Oracle公司的MySQL,分为昂贵的企业版和免费开源的社区版。MySQL可能是曾经使用最广泛的数据库软件,但后来由于Oracle对开源软件的态度很不稳定,所以开发者正在快速逃离。
  • 开源免费的MariaDB,这是MySQL创始人带领社区力量重新开放的数据库,是MySQL的新生,很多老用户都转移到这里。
  • 开源免费的PostgreSQL,适合大型商业项目使用的关系型数据库,它比MariaDB更复杂更强大,对于一般Web项目不推荐使用,支持的编程语言也不多,不支持Golang。

而对于非结构化数据则难以建立统一的处理方式,我们统称为NoSQL数据库,也叫非关系型数据库,主要知名的NoSQL数据库有:

  • mongoDB,应用最广的NoSQL数据库,开源,有付费的企业版也有免费的社区版。这是一种文档型数据库,每个数据像是一个文档,可以灵活存储各种信息,而且具有强大的查询能力。
  • Apache Cassandra,这是有Facebook基于Google的BigTable技术推出的非关系型数据库产品,它是开源免费的,它易于分布式部署(就是安装在很多台不同城市的电脑上协同工作),适合大型商业服务软件使用。
  • Redis,开源免费,这是一个基于内存的高性能数据库服务,它的数据结构只有非常简单的几种,但功能强大。常被用来做性能要求很高的部分数据存储服务。
  • Apache Hbase,他也是一款开源免费软件,基于谷歌BigTable技术的分布式数据库,和Cassandra类似,目前已经是大数据技术的核心内容之一。Hbase和Cassandra很像,Cassandra相对更完整;而Hbase需要依赖其他组件才能实现完整数据库功能,也恰好因为这个,它可以很好地融入到当今主流的大数据技术中去。

关于数据库,需要了解的更多几点:

  • 各种数据库各有所长,没有哪一个是万能的。
  • 很多项目都是多种数据库综合使用,充分利用每种数据库的优势强强组合。
  • 选择数据库要根据具体的需求来选,企业并不一味追求价格敏感。
  • SQL数据库的操作大同小异,都遵循统一的SQL通用标准语法。
  • NoSQL数据库会有些不同,可能需要逐渐积累经验。
  • 很多数据库都支持分布式存储到很多机器上。
  • 很多云服务商(比如阿里云腾讯云)都提供了云端租用数据库的产品,这也是很多企业的首选,——而不是完全依赖于公司自己安装部署数据库。

我们接下来会只使用MongoDB,因为它是NoSQL数据库,存储快速,但同时又是NoSQL数据库中查询能力最强使用最简单的。

安装MongoDB

直接到官方网站下载社区版Community安装包,注意确认操作系统正确。
点这里进入下载页面

对于windows用户,请选择安装MongoDB as a service,使用默认的Server Name等设置即可。安装成功后数据库就自动运行了,可以从程序里面或者目录C:\Program Files\MongoDB\Server\4.0\bin\打开mongo.exe启动管理。

对于MacOS用户:

  • 下载tgz文件解压,然后前往文件夹/usr/local/,创建mongo文件夹,把解压得到的bin文件夹拷贝进去,然后在用户目录(小房子首页,或者前往~)使用快捷键Command+shift+.显示隐藏文件,打开.bash_profile文件,添加下面内容:
#mongoDB
export PATH=/usr/local/mongo/bin:$PATH
  • 使用source .bash_profile命令刷新设置。
  • 使用sudo mkdir -p ~/data/db命令创建必须的文件夹,这个文件夹就在用户目录。
  • 使用命令mongod --dbpath ~/data/db启动数据库服务,这个~/data/db必须和上面创建的文件夹一致。

macOS下也可以使用brew install mongodb-community@4.0命令进行安装,然后brew services start mongodb-community@4.0命令启动数据库。

安装成功后我们可以在新窗口执行命令mongo能够进入命令提示符状态,尝试使用下面的代码创建数据:

db.inventory.insertOne(
   { item: "canvas", qty: 100, tags: ["cotton"], size: { h: 28, w: 35.5, uom: "cm" } }
)

成功的话回访一些标准信息:

image.png

数据库管理工具Compass

都是命令的方法看上去不太方便,我们可以安装MongoDB Compass软件来进行管理。

点这里进入下载页面,注意选择正确的操作系统。

下载后直接安装。

启动后,链接到主机Connect to Host使用默认设置,

在左侧Test下的inventory中可以看到我们刚才用命令创建的数据。

我们点击左下角的加号创建一个数据库,DataBase Name为myweb,数据集Collection Name为user用户,接下来我们将用Golang把用户从网页发送来的数据存储在这里。

这是使用界面软件管理数据库的方法,在下一篇我们介绍如何使用Golang将用户名存储到mongo数据库里面。


欢迎关注我的专栏( つ•̀ω•́)つ【人工智能通识】


每个人的智能新时代

如果您发现文章错误,请不吝留言指正;
如果您觉得有用,请点喜欢;
如果您觉得很有用,欢迎转载~


END


有疑问加站长微信联系(非本文作者)

本文来自:简书

感谢作者:zhyuzh3d

查看原文:软件技术-零基础-MangoDB数据库存储

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

2173 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传