🧑🏻💻数据库简介及Mac平台环境搭建🧑🏻💻
数据库
存储数据的演变过程
- 如果没有使用数据库,我们自己存放文件,数据格式是千差万别的,完全取决于我们自己,例如:
"""
# 张三
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平台环境搭建🧑🏻💻的更多相关文章
- MAC OpenGL 环境搭建
MAC OpenGL 环境搭建 基础库介绍 先要安装两个库一个是GLEW(OpenGL Extension Wrangler Library),另外一个是GLFW(Graphics Library F ...
- Appium+python自动化16-appium1.6在mac上环境搭建启动ios模拟器上Safari浏览器
前言 在mac上搭建appium踩了不少坑,先是版本低了,启动后无限重启模拟器.后来全部升级最新版本,就稳稳的了. 环境准备: 1.OS版本号10.12 2.xcode版本号8.3.2 3.appiu ...
- appium1.6在mac上环境搭建启动ios模拟器上Safari浏览器 转自:上海-悠悠
前言 在mac上搭建appium踩了不少坑,先是版本低了,启动后无限重启模拟器.后来全部升级最新版本,就稳稳的了. 环境准备: 1.OS版本号10.12 2.xcode版本号8.3.2 3.appiu ...
- Mac Appium环境搭建
安装brew ruby -e "$(curl -fsSL https://raw.github.com/mxcl/homebrew/go)" 安装java brew install ...
- 【MySQL】MySQL无基础学习和入门之一:数据库基础概述和实验环境搭建
数据库基础概述 大部分互联网公司都选择MySQL作为业务数据存储数据库,除了MySQL目前还有很多公司使用Oracle(甲骨文).SQLserver(微软).MongoDB等. 从使用成本来区分可以 ...
- Mac 性能测试环境搭建——理论篇
此篇为博主原创内容,若转载请写明出处,谢谢! 前言在搭建之初,我们要思考的2个点:1.性能怎么测试?2.性能的测试环境如何搭建(该如何去做)?1.什么是性能? 个人理解为:合理的架构.低耦合.高 ...
- 基于Prometheus和Grafana的监控平台 - 环境搭建
相关概念 微服务中的监控分根据作用领域分为三大类,Logging,Tracing,Metrics. Logging - 用于记录离散的事件.例如,应用程序的调试信息或错误信息.它是我们诊断问题的依据. ...
- OpenStack-Ocata版+CentOS7.6 云平台环境搭建 — 8.仪表盘 Dashboard(horizon)安装配置
仪表盘Dashboard(horizon)是一个web接口,使得云平台管理员以及用户可以管理不同的Openstack资源以及服务.这个部署示例使用的是 Apache Web 服务器. 节点配置信息说明 ...
- OpenStack-Ocata版+CentOS7.6 云平台环境搭建 — 1.操作系统环境配置
1.OpenStack示例的架构介绍 1.1 各节点介绍 (1)控制节点(controller)控制节点(controller)上运行身份服务,镜像服务,计算节点管理,网络管理,各种网络代理和仪表板. ...
随机推荐
- 流复制-pg_basebackup (没有自定义表空间)
一.组成部分 1.walsender进程是用来发送WAL日志记录的 2.walreceiver进程是用来接收WAL日志记录的 3.startup进程是用来apply日志的 二.主库配置 1.授权账号, ...
- SVN:TortoiseSVN SendRpt.exe not found 完美解决
今天来上班的时候,发现公司用的svn版本和我自己的不一致,其实可以使用但是还是神经质的更新了一下.结果每次右键都会出一个异常.下图所示. 期初以为是哪里配置错误,或者版本冲突,经过网上查找办法,完美解 ...
- 推荐一款复式记账软件——GnuCash
本文需要搞清楚两个事情,第一,什么是复式记账:第二,GnuCash操作 复式记账,来自百度百科的解释:复式记账法是以资产与权益平衡关系作为记账基础,对于每一笔经济业务,都要以相等的金额在两个或两个以上 ...
- 系统对 Device Tree Overlays 的支持方式
问题来源: 野火 iMX 6ULL 开发板资料. https://tutorial.linux.doc.embedfire.com/zh_CN/latest/linux_basis/fire-conf ...
- vue中使用剪切板插件 clipboard.js
vue中使用剪切板需要借助一个插件,clipboard,使用方法还是很简单的,先下载,然后引入: npm i clipboard -S //引入 import Clipboard from 'clip ...
- Linux学习(一):常用命令
init 0:关机 init 3:命令行模式 init 5:图形界面模式 init 6:重启 shutdown -h now:立马关机 ls:文件列表 参数:-l 详细列表 cd:切换目录 用法实例: ...
- java基础-HelloWorld
public class HelloWorld{//源文件中只能有一类声明为public , 且类名和源文件名得一样 //main方法,程序的入口 public static void main(St ...
- pandas如何逐行需改DataFrame
逐行修改DataFrame而不会报SettingwithCopyWarning警告的方法: df.iloc[行数,df.columns.get_loc(列名)]=new_value 参考:https: ...
- centos7 在docker下安装mongodb
第一步:安装 1.1 查找(查看)mongo相应的版本 [root@localhost ~]# docker search mongo INDEX NAME DESCRIPTION STARS OFF ...
- Rocket - debug - TLDebugModuleInnerAsync
https://mp.weixin.qq.com/s/Xf4VFTHIDFh1NHmfwlTX3w 简单介绍TLDebugModuleInnerAsync的实现. 1. dmInner dmInner ...