返回信息流工作需要,需要使用MYSQL。
为了和大家共同进步,特开此贴,一起学习。
将要学习MYSQL的使用、调优和架构。
个人说明:有多年的oracle的使用和调优经验,mysql仅仅安装过,但有过多次培训经历。
这是一条镜像帖。来源:北邮人论坛 / database / #6790同步于 2012/5/22
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Database机器人发帖
开贴从零开学MYSQL
oracle
2012/5/22镜像同步47 回复
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
赞一个
ps:总体了解的话,不建议看百度百科,一是不够“总体”,二是有些内容可能没有更新或是错的。
比如它讲存储引擎时提到“MyISAMMysql的默认数据库,最为常用。”,实际上你看MySQL Manual时会看到“InnoDB is the default storage engine as of MySQL 5.5.5. ” “MyISAM is supported in all MySQL configurations, and is the default storage engine prior to MySQL 5.5.5.”
【 在 doubleKO 的大作中提到: 】
: 赞一个
: ps:总体了解的话,不建议看百度百科,一是不够“总体”,二是有些内容可能没有更新或是错的。
: 比如它讲存储引擎时提到“MyISAMMysql的默认数据库,最为常用。”,实际上你看MySQL Manual时会看到“InnoDB is the default storage engine as of MySQL 5.5.5. ” “MyISAM is supported in all MySQL configurations, and is the default storage engine prior to MySQL 5.5.5.”
: ...................
版主现在是大四了,还是研究生,还是已经工作了
呵呵,这么多跟帖,看来潜水员同志很多。
既然这么多人,大家不如一起参与进来,由我学大家看,改成大家一起学习。
也请经验丰富的同学指导。
初步的学习计划这么考虑:
<1> 学习周期:第一周期暂定3个月。5.23-8.23
<2> 学习目标:通过三个月的学习,让大家成为mysql的初级专家
<3> 学习时间:我大约每天花1个小时左右的时间(周末不计),大家可根据自己情况安排。
<4> 学习计划:目前是前期了解阶段,大约一周后定制3个月的学习计划。
<5> 学习方式:我来引导,大家建议,分工学习。
请大家在后面跟帖报名,注明以下情况:
<1> 是否工作,工作年限,年级
<2> 研究方向
<3> 之前数据库使用情况
<4> 每天可学习的时间
1. Mysql特性:
特性:
<1>使用C和C++编写
<2> 提供用于管理、检查、优化数据库操作的管理工具
>> 管理工具是什么呢?基于WEB的?待后续确认。
<3> 可以处理拥有上千万条记录的大型数据库
>> 看大家的使用情况,上亿条应该都不成问题。单表最大容量大约多少比较合适呢?
<4> 支持多种存储引擎
>>貌似存储引擎是重点
不足:
<1> 规模小。
<2>功能有限(MySQL Cluster的功能和效率都相对比较差)
>>这个太笼统,与oracle,db2,sqlserver的比较情况是什么呢?
2. 存储引擎
<1>MyISAMMysql的默认数据库,最为常用。拥有较高的插入,查询速度,但不支持事务。
>>非事务性可以选择这个。比如最终一致性的需求,比如查询系统。效率比innodb如何呢?
<2> InnoDB事务型数据库的首选引擎,支持ACID事务,支持行级锁定。
>>这个貌似是最常用的。
<3> BDB源自Berkeley DB,事务型数据库的另一种选择,支持COMMIT和ROLLBACK等其他事务特性。
>>跟berkeleydb一回事么
<4> Memory所有数据置于内存的存储引擎,拥有极高的插入,更新和查询效率。但是会占用和数据量成正比的内存空间。并且其内容会在Mysql重新启动时丢失。
>>宕机数据就都没了?不靠谱吧?
<5>Merge将一定数量的MyISAM表联合而成一个整体,在超大规模数据存储时很有用。
>> 不太明白。。。
<6>Archive非常适合存储大量的独立的,作为历史记录的数据。因为它们不经常被读取。Archive拥有高效的插入速度,但其对查询的支持相对较差
>> 归档存储?什么场景呢?
<7> Federated将不同的Mysql服务器联合起来,逻辑上组成一个完整的数据库。非常适合分布式应用
>> 分布式应用主要用这个么?
<8> Cluster/NDB高冗余的存储引擎,用多台数据机器联合提供服务以提高整体性能和安全性。适合数据量大,安全和性能要求高的应用
>> 类似与master-slaver集群?
<9> CSV逻辑上由逗号分割数据的存储引擎,BlackHole黑洞引擎,写入的任何数据都会消失,一般用于记录binlog做复制的中继
>> 好深奥,binlog复制中继?
<10> EXAMPLE存储引擎是一个不做任何事情的存根引擎。它的目的是作为MySQL源代码中的一个例子,用来演示如何开始编写一个新存储引擎。同样,它的主要兴趣是对开发者。EXAMPLE存储引擎不支持编索引。
>> 示例引擎
>>各种存储引擎讲解比较简单啊。最好能结合场景学习。
3. 应用架构
<1> 单点(Single),适合小规模应用
<2> 复制(Replication),适合中小规模应用
<3> 集群(Cluster),适合大规模应用
4. 索引
>> 后续再学习。
学习笔记:
根据上面的学习,可以初步了解mysql的总体情况。但以下内容需要我们进一步学习:
<1> mysql与其他数据库的比较。
<2> mysql的特性,比如管理界面有没有。
<3> mysql整体的结构是什么样子。文件,存储等。
<4> mysql主要的存储引擎都什么样的应用场合,我们学习需要安装哪个存储引擎。
to be continue