python27期尚哥讲数据库:

数据:描述事物的一种符号
数据就是数值,是指对客观事件(客观事物)进行观察的结果
是对客观事物的性质、状态以及相互关系等进行记载的符号或这些符号的组合
它是可以进行记录并可以鉴别的符号,是对客观事物的逻辑归纳

表现形式多样:文本、图形、音视频(都是二进制)
数据有很多种,最简单的就是数字
数据也可以是文字、图像、声音等

数据库(DataBase,简称DB):存放数据的仓库(文件夹)
数据按照一定的格式存放在计算机中,可为用户共享
方便存储、快速查找

数据库管理系统(DataBase Management System 简称DBMS)
科学的组织和存储数据
是一种操纵和管理数据库的大型软件,用于建立、使用和维护数据库
它对数据库进行统一的管理和控制,以保证数据库的安全性和完整性
用户通过DBMS访问数据库中的数据,数据库管理员也通过DBMS进行数据库的维护工作。
有oracle、MySQL、SQL Server等等
mysql主要用于大型门户,例如搜狗、新浪等,它主要的优势就是开放源代码,因为开放源代码这个数据库是免费的,
他现在是甲骨文公司的产品。(官网下载,有些大公司会做二次封装用自己的)
oracle主要用于银行、铁路、飞机场等。该数据库功能强大(规避很多风险),软件费用高。也是甲骨文公司的产品。
sql server是微软公司的产品,主要应用于大中型企业,如联想、方正等(使用较少)

数据库应用程序(DBAS)
在数据库管理系统的基础上,使用数据库管理系统的语法,直接面对最终用户的应用程序
图书管理系统、人事管理系统等等

数据库管理员(DBA)
数据库管理系统的操作者

最终用户
数据库应用程序的使用者

数据库系统(DBS)
数据库 + 数据库管理系统 + 数据库应用程序 + 数据库管理员 + 最终用户

数据库的好处:
1.程序稳定性 :这样任意一台服务所在的机器崩溃了都不会影响数据和另外的服务(备份)

2.数据一致性 :所有的数据都存储在一起,所有的程序操作的数据都是统一的,就不会出现数据不一致的现象

3.并发 :数据库可以良好的支持并发,所有的程序操作数据库都是通过网络,而数据库本身支持并发的网络操作,不需要我们自己写socket

4.效率 :使用数据库对数据进行增删改查的效率要高出我们自己处理文件很多

数据库服务器:一台计算机(对内存要求比较高)运行数据库管理软件
数据库管理软件:管理-数据库
数据库:即文件夹,用来组织文件/表
表:即文件,用来存放多行内容/多条记录

MySQL:是一个应用广泛、免费、开源的关系型数据库管理系统
关系型数据库需要有表结构
关系型数据库最典型的数据结构是表,由二维表及其之间的联系所组成的一个数据组织
优点:
1、易于维护:都是使用表结构,格式一致
2、使用方便:SQL语言通用,可用于复杂查询
3、复杂操作:支持SQL,可用于一个表以及多个表之间非常复杂的查询
缺点:
1、读写性能比较差,尤其是海量数据的高效率读写
2、固定的表结构,灵活度稍欠
3、高并发读写需求,传统关系型数据库来说,硬盘I/O是一个很大的瓶颈

非关系型数据库是key-value存储的,没有表结构
非关系型数据库严格上不是一种数据库,应该是一种数据结构化存储方法的集合,可以是文档或者键值对等
优点:
1、格式灵活:存储数据的格式可以是key,value形式、文档形式、图片形式等等
2、速度快,成本低:nosql数据库部署简单,基本都是开源软件
缺点:
1、不提供sql支持,学习和使用成本较高
2、无事务处理
3、数据结构相对复杂,复杂查询方面稍欠

下载MySQL:
登录https://dev.mysql.com/downloads/installer/ (历史版本)
选择Microsoft Windows
点击Download

典型安装:

完整安装:

自定义安装(选择)

产品选择(默认)

修改安装路径(中文)

配置(选中)

设置密码

选中后其他电脑可以链接该数据库

连接数据库
命令操作方式:bin目录中打开终端,运行mysql –uroot –p (quit 或 exit退出)

图形界面:navicat

1,解压,找到 my-default.ini 文件
2,将该文件粘贴到项目文件中,并更名为 my.ini
3,修改文件内容(参考my.ini文件),注意一定保证格式(不能有多余空格之类)
4,修改安装目录为当前解压后文件的目录(不能有\n等转义,不能有中文,不能有空格)
5,保存修改
6,将文件粘贴回解压的文件目录(不用管修改前的原文件)
7,配置环境变量: 我的电脑-属性-高级系统设置-环境变量-系统变量-Path-新建-粘贴bin目录的地址
以管理员身份运行命令提示符(找到cmd,右键管理员身份运行):
输入mysqld install
出现Service successfully installed.代表安装成功
继续输入:net start mysql 启动MySQL服务
登陆管理员用户:mysql -uroot -p 登陆MySQL服务器
远程登陆MySQL服务器 mysql -uroot -p123 -h192.168.19.200

察看当前用户:select user();
退出:exit;
给当前账户设置密码(必须以管理员登陆):set password = password('123')
创建一个其他用户:
mysql> create user 'shang'@'192.168.10.%' IDENTIFIED BY '123'; #指定网段密码
mysql> create user 'shang'@'192.168.10.5' # 指示某机器可以连接
mysql> create user 'shang'@'%' #指示所有机器都可以连接
给一个用户授权:
grant 权限类型 on 数据库名称 . * (或表名) to 'shang'@'%';
all 所有权限
select 查
select,insert 查和写

mysql> flush privileges; # 刷新使授权立即生效(万一没有立即生效)
创建账号并授权
grant all on 数据库名称 .* to 'alex'@'%' identified by '123'

SQL:结构化查询语言,是一种特殊的编程语言(4代)
是用于访问和处理数据库的标准的计算机语言
用于存取数据以及查询、更新、管理关系数据库系统

1986年10月,美国国家标准协会(AESC)对SQL进行规范后,以此作为关系式数据库管理系统的标准语言

不过各种通行的数据库系统在其实践过程中都对SQL规范作了某些编改和扩充。所以,实际上不同数据库系统之间的SQL不能完全相互通用
针对不同的数据库,如hivesql、mysql、sqlserver、oracle等,sql语法会有所不同,但是总体上大同小异

SQL的作用:使我们有能力访问数据库,需要在数据库上执行的大部分工作都由 SQL 语句完成
SQL 面向数据库执行查询
SQL 可从数据库取回数据
SQL 可在数据库中插入新的记录
SQL 可更新数据库中的数据
SQL 可从数据库删除记录
SQL 可创建新数据库
SQL 可在数据库中创建新表
SQL 可在数据库中创建存储过程
SQL 可在数据库中创建视图
SQL 可以设置表、存储过程和视图的权限

SQL语言的5个部分(重要性从高到低):
数据查询语言(DQL:Data Query Language):select
其语句,也称为“数据检索语句”,用以从表中获得数据,确定数据怎样在应用程序给出
数据操作语言(DML:Data Manipulation Language):inster,updata,delete
其语句包括动词INSERT,UPDATE和DELETE。它们分别用于添加,修改和删除表中的行。也称为动作查询语言
数据定义语言(DDL):create,alter,drop
在数据库中创建新表或删除表;为表加入索引等
数据控制语言(DCL):grant,revoke
它的语句确定单个用户和用户组对数据库对象的访问
事务处理语言(TPL):
它的语句能确保被DML语句影响的表的所有行及时得以更新

前三个部分必须掌握,后两个部分可以现用现查
同时注意:SQL 对大小写不敏感

数据库操作(DDL):
创建数据库:
删除数据库:
切换数据库:
查看当前选择的数据库:

数据库操作(DDL):
创建数据库:
CREATE DATABASE 数据库名称;
CREATE DATABASE test101 CHARSET=utf8;
删除数据库(慎用!):
DROP DATABASE 数据库名称;
显示所有数据库:
SHOW DATABASES;
切换数据库:
USE 数据库名称 ;

-- 代表注释



create user "alex"@"%" identified by "234";

select user();

mysql -uroot -p

猜你喜欢

转载自www.cnblogs.com/zhang-da/p/11928245.html