Python正课95—— 数据库基础

本文内容皆为作者原创,如需转载,请注明出处:https://www.cnblogs.com/xuexianqi/p/12807067.html

一:存储数据的演变过程

随意地存到一个文件中、数据格式也是千差万别的,完全取决于我们自己

# 小李
jason | 123 | NB

# 小王
egon - 123 - DSB

# 小红
tank ~ 123 ~ hecha

软件开发目录规范

(限制了存储数据的具体位置)

- api   存放接口文件,接口主要用于为业务逻辑提供数据操作

- bin   整个项目的启动文件放置在这个文件夹中

- conf  整个项目的配置文件放置在这个文件夹

- core  整个项目的核心文件

- db    用于存放数据文件与操作数据的代码文件
    
- interface   用于存放用户接口

- lib   项目的第三方包,共享的一些库

- log	用于存放项目的日志文件

- README.TXT    整个项目的说明文件,项目需求和大致流程,相当于产品说明书

假设基于上述是一个单机游戏

那么每个人的游戏记录只会在自己的计算机上面保存

注册登录的账号也只能在自己的计算机上有效

如何将单机变成连网

将数据库保存部分全部统一起来
所有人操作数据都在一个地方操作

数据库的本质

本质其实就是一款基于网络通信的应用程序
那其实每个人都可以开发一款数据库软件
因为它仅仅是一个基于网络通信的应用程序

也就意味着数据库软件其实有很多很多:

	关系型数据库:
		MySQL、Oracle、db2、Access、SQL Server
		
	非关系型数据库:
		Redis、MongoDB、Memcache
		
# 关系型
	1.数据之间彼此有关系或者约束
		男生表 - 前女友表
	2.存储数据的表现形式 通常是以表格存储
		name	password	hobby
		jason	123			sleep
		egon	123			eat
		tank	123			run
		每个字段还会有存储类型的显示
		比如姓名只能存字符串....
		
# 非关系型
	存储数据通常都是以k,v键值对的形式

二:MySQL

任何基于网络通信的应用程序 底层用的都是socket

- 服务端
	- 基于socket通信
	- 收发消息
	- SQL语句

- 客户端
	- 基于socket通信
	- 收发消息
	- SQL语句
	
MySQL不单单支持MySQL自己的客户端APP 还支持其他编程语言来充当客户端操作
	如何解决语言沟通的障碍
		# 1.让服务端兼容所有的语言(一个人精通多国语言)
		# 2.采用统一的语言(SQL语句)

三:重要概念介绍

库    ==>    文件夹
表    ==>    文件
记录  ==>     文件内一行行的数据

		name	password	hobby
		jason	123			sleep
		egon	123			eat
		tank	123			run
		
表头:		表格的第一行字段
字段:		name、password、hobby




四:MySQL的安装

在IT界 一般都不会轻易地使用最新版本的软件,因为新版本可能会出现工作问题
(你原本的项目跑得好好的 非要画蛇添足去更新版本 然后项目崩溃)
小段子:
	更新完没事儿 那么你还是一个普通员工
	更新完出事儿 那么你就是一名“烈士”
	
# MySQL有很多版本(5.6/5.7/8.0) 目前企业里面用得比较多的还是5.6左右

参考网站:http://www.mysql.com

下载5.6版本即可,如果你下载了其他版本,问题不大,因为SQL语句是一样的。

按照上述方式下载,会将服务端和客户端一并下载到本地。

为了学习方便,我们将服务端和客户端都在本地启动,后期到了公司,服务端会专门跑在一台服务器上,所有人基于网络连接服务端操作

MySQL服务端与客户端

服务端:
	mysqld.exe

客户端:
	mysql.exe

注意:

在前期配置MySQL的时候,cmd终端尽量以管理员的身份打开
Windows+R 输出 cmd 进入的是普通用户的cmd,有一些命令无法执行
搜索 cmd右键 - 以管理员身份运行
直接在桌面,按住shift,鼠标右键,在此处打开power shell,就是管理员

启动:

先切换到mysqld所在的bin目录下,然后输入mysqld即可
保留原来的cmd窗口

Python正课95—— 数据库基础

上一篇:总结mysql 8.0及以上版本遇到的坑


下一篇:Oracle中dbms_random包详解