本文由编程笔记#小编为大家整理,主要介绍了MySQL笔记1|数据库17问17答相关的知识,希望对你有一定的参考价值。
以下17个问题来自下图第一章:
1.我们身边有哪些数据库?
http://c.biancheng.net/view/7628.html
图书馆
在图书馆中可能存在一个数据库,用来存储图书馆中所有图书的详细资料和读者的详细信息等。
大学
如果你正在大学就读,学校会有一个用来存储学生所有信息的数据库系统(学生管理系统),包括注册的课程、获得的各类奖学金、往年已选择的课程和今年正在选择的课程以及考试成绩信息等。可能还有一个数据库用来存储在大学中工作员工的详细信息。
还有超市购物、信用卡消费、购买保险等都需要数据库~
2.数据管理技术的3个发展阶段
http://c.biancheng.net/view/7435.html
3.数据库是什么?关系型数据库和非关系型数据库又是什么?
http://c.biancheng.net/view/7122.html
数据库实际上就是一个文件集合,是一个存储数据的仓库,本质就是一个文件系统,数据库是按照特定的格式把数据存储起来,用户可以对存储的数据进行增删改查操作。
关系型数据库是建立在关系模型基础上的数据库,借助于集合代数等数学概念和方法来处理数据库中的数据。简单说,关系型数据库是由多张能互相连接的表组成的数据库。
非关系型数据库又被称为 NoSQL(Not Only SQL ),意为不仅仅是 SQL。通常指数据以对象的形式存储在数据库中,而对象之间的关系通过每个对象自身的属性来决定。
4.为什么要使用数据库?
http://c.biancheng.net/view/7167.html
1) 数据库可以结构化存储大量的数据信息,方便用户进行有效的检索和访问。
2) 数据库可以有效地保持数据信息的一致性、完整性、降低数据冗余。
3) 数据库可以满足应用的共享和安全方面的要求,把数据放在数据库中在很多情况下也是出于安全的考虑。
4) 数据库技术能够方便智能化地分析,产生新的有用信息。
5.数据库系统是什么?它由哪几部分组成?
http://c.biancheng.net/view/7565.html
一个完整的数据库系统一般由数据库、数据库管理系统、应用开发工具、应用系统、数据库管理员和用户组成。
数据库系统主要有以下 3 个组成部分
数据库:用于存储数据的地方。
数据库管理系统:用于管理数据库的软件。
数据库应用程序:为了提高数据库系统的处理能力所使用的管理数据库库的软件补充。
6.常用数据库访问接口简介
http://c.biancheng.net/view/7567.html
ODBC、JDBC、ADO.NET 和 PDO。
ODBC(Open Database Connectivity,开放数据库互连)为访问不同的 SQL 数据库提供了一个共同的接口。
Java Data Base(JDBC,Java 数据库连接)用于 Java 应用程序连接数据库的标准方法。
ADO.NET 是微软在 .NET 框架下开发设计的一组用于和数据源进行交互的面向对象类库。
PDO(php Data Object)为 PHP 访问数据库定义了一个轻量级的、一致性的接口。
7.数据库的种类有哪些?
http://c.biancheng.net/view/7215.html
层次数据库(Hierarchical Database,HDB)
把数据通过层次结构(树形结构)的方式表现出来。现在已经很少使用了。
关系型数据库(Relational Database,RDB)
现在应用最广泛的数据库。采用由行和列组成的二维表来管理数据,简单易懂。同时,它还使用 SQL(Structured Query Language,结构化查询语言)对数据进行操作。有代表性的关系型数据库有 Oracle Database、SQL Server、DB2、PostgreSQL 和mysql。
面向文档(Document-Oriented)数据库
将数据以文档的形式存储。每个文档都是一系列数据项的集合。每个数据项都有一个名称与对应的值。具有代表性的面向文档数据库有 MongDB 和 CouchDB。
列存储(Column-oriented)数据库
列存储数据库将数据存储存在列族(column family)中,一个列族用来存储经常被一起查询的相关数据。列存储数据库通常用来应对分布式存储的海量数据。具有代表性的列存储数据库有 Cassandra 和 HBase。
XML 数据库(XML Database,XMLDB)
XML 数据库是一种支持对 XML(标准通用标记语言下的一个应用)格式文档进行存储和查询等操作的数据管理系统。
键值存储数据库(Key-Value Store,KVS)
键值存储数据库是用来保存查询所使用的主键(Key)和值(Value)的组合的数据库。有代表性的键值存储数据库有 Redis、Memcached 和 MemcachedDB。
8.常用数据库大汇总(附带优缺点)
http://c.biancheng.net/view/7109.html
商业数据库,如甲骨文(Oracle)公司的 Oracle 数据库、IBM 公司的 DB2 数据库、微软公司的 SQL Server 数据库和 Access 数据库。
开源数据库,如 MySQL 数据库,PostgreSQL 数据库等。
下面今介绍MySQL,其他数据库介绍见 http://c.biancheng.net/view/7109.html ~
9.MySQL是什么?优势?
http://c.biancheng.net/view/7105.html
MySQL 是最流行的数据库之一,是一个免费开源的关系型数据库管理系统(实际上社区版免费,企业版付费)。
优势:
1)MySQL 是开放源代码的数据库
2)MySQL 的跨平台性
3)价格优势
4)功能强大且使用方便
MySQL 是一个真正的多用户、 多线程 SQL 数据库服务器。它能够快速、有效和安全的处理大量的数据。相对于 Oracle 等数据库来说,MySQL 的使用是非常简单的。MySQL 主要目标是快速、健壮和易用。
10.MySQL适用于哪些场景?
http://c.biancheng.net/view/7966.html
MySQL 是目前世界上最流行的开源关系数据库,大多应用于互联网行业。比如,在国内,大家所熟知的百度、腾讯、淘宝、京东、网易、新浪等,国外的 Google、Facebook、Twitter、GitHub 等都在使用 MySQL。社交、电商、游戏的核心存储往往也是 MySQL。
1. Web 网站系统
因为安装配置非常简单,维护也不复杂,而且性能出色且开源。
2、日志记录系统
3、数据仓库系统
4、嵌入式系统
业内生产实践证明,MySQL 更适合中小型企业。以目前的软硬件产品水平来看,如果数据超过几个 TB 将难以高效利用 MySQL。
11.学MySQL前,需要了解这些数据库专业术语
https://www.xiaobaijidi.com/t/51936
数据库管理系统(DBMS)是位于操作系统与用户之间的一种操纵和管理数据库的软件。关系型数据库通过关系数据库管理系统(RDBMS)进行管理。
关系(Relational,即 RDBMS 里的 R)表示这是一种特殊的 DBMS,数据库中表与表之间要存在关系。
数据库(DataBase,即 RDBMS 里的 DB)是一个用来存储和管理数据的仓库。它的存储空间很大,并且有一定的数据存放规则。通过由行和列组成的二维表(类似 Excel 工作表)来管理数据。数据库中可以同时存储多个表。
管理系统(Management System,即 RDBMS 里的 MS)是一个软件,我们可以通过它来插入(insert)、查询(query)、修改(modify)或删除(delete)表中的数据。
用来管理数据的二维表在关系数据库中简称为表(Table),每个表由多个行(Row)和列(Column)组成。
表的列(垂直方向)称为字段,是具有相同数据类型的数据集合。表的行(水平方向)称为记录(Record),相当于一条数据。记录可以包含多项信息,表中的每一列都对应于其中的某一项。
12.MySQL客户端和服务器架构(C/S架构)
http://c.biancheng.net/view/7171.html
客户端-服务器(Client/Server)结构简称 C/S 结构,是一种网络架构,通常在该网络架构下的软件分为客户端和服务器。
对于 MySQL 数据库管理系统,服务器为MySQL DBMS。你可以在本地安装的副本上运行,也可以连接到运行在你具有访问权的远程服务器上的一个副本。
客户端可以是 MySQL 提供的工具(如 MySQL Workbench、SQLyog)、脚本语言(如Perl)、Web 应用开发语言(如ASP、ColdFusion、JSP 和 PHP)和程序设计语言(如 C、C++、Java)等。
13.明白了MySQL内部结构才能成为高手!
https://blog.csdn.net/shirleycyy/article/details/80057497?utm_medium=distribute.pc_relevant.none-task-blog-searchFromBaidu-3.baidujs&dist_request_id=a71097cc-2177-4b65-b193-23b5f18a87cb&depth_1-utm_source=distribute.pc_relevant.none-task-blog-searchFromBaidu-3.baidujs
表才是存放数据的基本单元。
结论:Mysql数据底层由多个database组成,每一个database存放多张表。
https://blog.csdn.net/weixin_52183917/article/details/109827968?utm_medium=distribute.pc_relevant.none-task-blog-baidujs_baidulandingword-2&spm=1001.2101.3001.4242
一条SQL执行过程
14.如何学习数据库(新手必看)?
http://c.biancheng.net/view/7098.html
如何高效的学习 MySQL
1)培养兴趣
2)及时学习新知识
3)多练习、多操作
4)多编写SQL语句
5)通过 Java 等编程语言来操作数据库
软件开发者学习数据库的最终目的就是在软件开发中使用数据库。
6)数据库理论知识不能丢,理论和实际结合
eg:数据库理论中会讲解 E-R 图、数据库设计原则等知识,如果不了解这些知识,就很难独立设计一个很好的数据库及表。
15.小白学习MySQL需要多长时间,可以从事哪方面的工作?
http://c.biancheng.net/view/7671.html
16.
当前市场对数据库程序员的需求如何?待遇如何?
http://c.biancheng.net/view/8301.html
数据库开发人员和维护人员在市场上一直都是急缺人才。
如果想往 DBA 这个方向发展,那么 Oracle、MySQL、DB2 或非关系型数据库(如 MongoDB、Redis 等)都可以。
数据库程序员有哪些可供选择的职业发展道路?
数据库开发转 DBA,DBA 升项目经理、技术总监,转行做技术销售,大数据、云计算和数据库架构师等。
目前对于市场上数据库的求职,主要以 Oracle 和 MySQL 为主。对于 NoSQL 的要求,一般都是包含在 Oracle 和 MySQL 之内的,要求精通 Oracle 或 MySQL,熟悉一种 NoSQL 数据库。
Oracle 主要在传统行业招聘,而 MySQL 主要在互联网行业招聘。