数据库

存储数据的演变过程

  • 如果没有使用数据库,我们自己存放文件,数据格式是千差万别的,完全取决于我们自己,例如:
"""
# 张三
zhangsan|123|read
# 李四
lisi-123-sing
# 王五
wangle~123~dance
"""
  • 软件开发目录规范,它限制了我们存储数据的目录,每个目录都有自己的作用。
"""
bin 二进制文件
conf 配置文件
core 核心文件
lib 公共功能
db 数据库
readme 使用说明
"""
  • 假设有一个单机游戏,游戏的记录只能在自己的计算机上保存,并且注册登录的账号也只能在自己的计算机上有效,那么我们如何将一个单机的变成联网呢
"""
将数据库(db)保存部分全部统一起来
所有人操作数据都来一个地方操作
"""

数据库的本质

"""
数据库的本质就是一个基于socket网络通信的应用程序
这样的话其实每个人都可以开发一款数据库软件,因为它仅仅就是一个基于socket网络通信的应用程序
也就意味着数据库软件有很多很多
数据库分类两大类:
关系型数据库
MySQL、oracle、db2、sql server、access
非关系型数据库
redis、mongodb、memcache
# 关系型数据库的特点
1、数据之间彼此有关系或者约束
2、存储数据的表现形式通常是以表格存储
name password hobby
Matthew 123 read
Nagase 123 sing
Samuel 123 dance 每个字段还有存储类型的限制,比如,姓名字段只能存储字符串类型
# 非关系型数据库
存储数据通常都是以k、v键值对的形式
"""

MySQL数据库

"""
任何基于网络通信的应用程序底层使用的都是socket,socket是最底层的
- 客户端
- 基于socket实现通信
- 收发消息
- 服务端
- 基于socket实现通信
- 收发消息
"""
# MySQL不单单支持自己的客户端,还支持其他编程语言来充当客户端操作数据库,那么问题来了,如何解决语言的障碍呢?
# Method 1:让服务端精通所有的编程语言,这就类似于我们精通多国语言
# Method 2:采用统一的语言,这个统一的语言就是我们的SQL语句

重要概念介绍

"""
库 》》》 文件夹
表 》》》 文件
记录 》》》 文件内一行行的数据 name password hobby
Matthew 123 read
Nagase 123 sing
Samuel 123 dance 表头:表格的第一行字段
字段:name、password、hobby
表单:表头除外剩下的数据都是表单
"""

数据库的安装

  因为我是Mac本,因此在这里给大家介绍一下在Mac平台安装。

  下载地址:https://dev.mysql.com/downloads/mysql/,下载DMG安装包:

  

  下载完成之后,双击打开图形化安装界面:

  

  一直点击继续进行下一步操作:

  

  

  

  点击finish之后需要验证用户密码,稍等之后即可安装成功。

  

  

  安装完成之后,数据库自动启动,并且会开机自启动,这就是图形化安装的方便之处,不需要我们手动去设置。

  安装完之后,我们需要设置一下系统的环境变量。打开终端,进入个人目录(默认终端打开就是个人目录)

  由于操作系统是macOS Catalina,终端采用了zsh,因此我们在终端输入命令:sudo vim .zprofile然后回车,输入i进入编辑模式,我们在文件中编写如图所示两行配置。补充:mysql在Mac平台进行安装的时候,默认的安装目录是/usr/local/mysql

  

  配置完之后重启一下终端,以使得配置文件生效。

启动

  • 打开终端窗口,输入命令
"""
常见软件的端口号
mysql 3306
redis 6379
mongodb 27017
django 8000
flask 5000
tomcat 8080
""" # 客户端链接服务端的完整命令
mysql -h 127.0.0.1 -P 3306 -uroot -p

SQL语句初识

"""
1、MySQL中的SQL语句是以 ;结尾的,必须得输入!
2、基本命令:show databases; 查看所有的数据库名
3、连接服务端的命令可以简写:mysql -uroot -p
4、当我们输错了SQL语句,但是又不想让服务端给我们返回错误信息,我们可以使用\c取消命令的执行
5、退出客户端

🧑🏻‍💻数据库简介及Mac平台环境搭建🧑🏻‍💻的更多相关文章

  1. MAC OpenGL 环境搭建

    MAC OpenGL 环境搭建 基础库介绍 先要安装两个库一个是GLEW(OpenGL Extension Wrangler Library),另外一个是GLFW(Graphics Library F ...

  2. Appium+python自动化16-appium1.6在mac上环境搭建启动ios模拟器上Safari浏览器

    前言 在mac上搭建appium踩了不少坑,先是版本低了,启动后无限重启模拟器.后来全部升级最新版本,就稳稳的了. 环境准备: 1.OS版本号10.12 2.xcode版本号8.3.2 3.appiu ...

  3. appium1.6在mac上环境搭建启动ios模拟器上Safari浏览器 转自:上海-悠悠

    前言 在mac上搭建appium踩了不少坑,先是版本低了,启动后无限重启模拟器.后来全部升级最新版本,就稳稳的了. 环境准备: 1.OS版本号10.12 2.xcode版本号8.3.2 3.appiu ...

  4. Mac Appium环境搭建

    安装brew ruby -e "$(curl -fsSL https://raw.github.com/mxcl/homebrew/go)" 安装java brew install ...

  5. 【MySQL】MySQL无基础学习和入门之一:数据库基础概述和实验环境搭建

    数据库基础概述  大部分互联网公司都选择MySQL作为业务数据存储数据库,除了MySQL目前还有很多公司使用Oracle(甲骨文).SQLserver(微软).MongoDB等. 从使用成本来区分可以 ...

  6. Mac 性能测试环境搭建——理论篇

    此篇为博主原创内容,若转载请写明出处,谢谢! 前言在搭建之初,我们要思考的2个点:1.性能怎么测试?2.性能的测试环境如何搭建(该如何去做)?1.什么是性能?    个人理解为:合理的架构.低耦合.高 ...

  7. 基于Prometheus和Grafana的监控平台 - 环境搭建

    相关概念 微服务中的监控分根据作用领域分为三大类,Logging,Tracing,Metrics. Logging - 用于记录离散的事件.例如,应用程序的调试信息或错误信息.它是我们诊断问题的依据. ...

  8. OpenStack-Ocata版+CentOS7.6 云平台环境搭建 — 8.仪表盘 Dashboard(horizon)安装配置

    仪表盘Dashboard(horizon)是一个web接口,使得云平台管理员以及用户可以管理不同的Openstack资源以及服务.这个部署示例使用的是 Apache Web 服务器. 节点配置信息说明 ...

  9. OpenStack-Ocata版+CentOS7.6 云平台环境搭建 — 1.操作系统环境配置

    1.OpenStack示例的架构介绍 1.1 各节点介绍 (1)控制节点(controller)控制节点(controller)上运行身份服务,镜像服务,计算节点管理,网络管理,各种网络代理和仪表板. ...

随机推荐

  1. nginx配置之禁止访问和404错误功能配置

    禁止访问功能配置 nginx.conf中的http{}中的server{}的location ..{}中: location / { #拒绝访问,192.168.16.0网段的同学都无法访问 /24是 ...

  2. 在ORACLE中实现SELECT TOP N的方法----[转]

    1.在ORACLE中实现SELECT TOP N 由于ORACLE不支持SELECT TOP语句,所以在ORACLE中经常是用ORDER BY跟ROWNUM的组合来实现SELECT TOP N的查询. ...

  3. 量子纠错码——Clifford group

    Clifford code Clifford group是什么? 简单的公式来表达,就是 \(Cl_{n}=\left\{U: U P_{n} U^{\dagger} \in P_{n}\right\ ...

  4. 【JavaScript数据结构系列】05-链表LinkedList

    [JavaScript数据结构系列]05-链表LinkedList 码路工人 CoderMonkey 转载请注明作者与出处 ## 1. 认识链表结构(单向链表) 链表也是线性结构, 节点相连构成链表 ...

  5. [注]6W运营法则教你盘活社区内容运营

    社区运营人员大体分为两种:一种是内容运营,这类人才基于产品,一般对文字以及对广告文案比较敏感:另外一种则是更多基于产品推广运营,前者需要把内容最大化地曝光,后者则是把产品推送给用户,两者的是相辅相成, ...

  6. 用TensorFlow搭建一个万能的神经网络框架(持续更新)

    我一直觉得TensorFlow的深度神经网络代码非常困难且繁琐,对TensorFlow搭建模型也十分困惑,所以我近期阅读了大量的神经网络代码,终于找到了搭建神经网络的规律,各位要是觉得我的文章对你有帮 ...

  7. Multiple annotations found at this line:- The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path

    解决办法: 右键所在项目 build path configure build path java build path Add Library server Run time (Apache Tom ...

  8. Spring ( 四 )Spring的AOP动态代理、切面编程

    个人博客网:https://wushaopei.github.io/    (你想要这里多有) 一.AOP切面编程 1.什么是AOP AOP是面向切面编程.全称:Aspect Oriented Pro ...

  9. 初学者对Git的使用安装教程,以及对unknown key type -rsa的解决办法

    第一次使用Git,诚惶诚恐. Git在每个电脑上第一次使用必须要配置环境,才能通过SSH秘钥的方式安全稳定的拉取代码! 此文适合对Git一无所知的小白观看,大神勿扰.下面我将讲解一个傻瓜式的Git安装 ...

  10. Java实现 LeetCode 706 设计哈希映射(数组+链表)

    706. 设计哈希映射 不使用任何内建的哈希表库设计一个哈希映射 具体地说,你的设计应该包含以下的功能 put(key, value):向哈希映射中插入(键,值)的数值对.如果键对应的值已经存在,更新 ...