随笔分类 -  MySQL

摘要:在使用MySQL的过程中对MyISAM和InnoDB这两个概念存在了些疑问,到底两者引擎有何分别一直是存在我心中的疑问。为了解开这个谜题,搜寻了网络,找到了如下信息: MyISAM是MySQL的默认数据库引擎(5.5版之前),由早期的ISAM(Indexed Sequential Access Method:有索引的顺序访问方法)所改良。虽然性能极佳,但却有一个缺点:不支持事务处理(transac... 阅读全文
posted @ 2017-04-01 11:58 ChavinKing 阅读(254) 评论(0) 推荐(0) 编辑
摘要:一、innodb log的基础知识 · innodb log顾名思义:即innodb存储引擎产生的日志,也可以称为重做日志文件,默认在innodb_data_home_dir下面有两个文件ib_logfile0和ib_logfile1。MySQL官方手册中将这两个文件叫文InnoDB存储引擎的日志文件; · innodb log的作用:当MySQL的实例和介质失败的时候,Innodb存储引擎就会使... 阅读全文
posted @ 2017-04-01 11:57 ChavinKing 阅读(995) 评论(0) 推荐(1) 编辑
摘要:从物理意义上来讲,InnoDB表由共享表空间、日志文件组(redo文件组)、表结构定义文件组成。若将innodb_file_per_table设置为on,则系统将为每一个表单独的生成一个table_name.ibd的文件,在此文件中,存储与该表相关的数据、索引、表的内部数据字典信息。表结构文件则以.frm结尾,这与存储引擎无关。 以下为InnoDB的表空间结构图: 在InnoDB存储引擎中,... 阅读全文
posted @ 2017-04-01 11:56 ChavinKing 阅读(377) 评论(0) 推荐(0) 编辑
摘要:从上层的角度来看,InnoDB层的文件,除了redo日志外,基本上具有相当统一的结构,都是固定block大小,普遍使用的btree结构来管理数据。只是针对不同的block的应用场景会分配不同的页类型。通常默认情况下,每个block的大小为 UNIV_PAGE_SIZE,在不做任何配置时值为16kb,你还可以选择在安装实例时指定一个块的block大小。对于压缩表,可以在建表时指定block size... 阅读全文
posted @ 2017-04-01 11:55 ChavinKing 阅读(3604) 评论(1) 推荐(0) 编辑
摘要:每个MyISAM在磁盘上存储成三个文件。第一个文件的名字以表的名字开始,扩展名指出文件类型。.frm文件存储表定义。数据文件的扩展名为.MYD (MYData)。索引文件的扩展名是.MYI (MYIndex)。 要明确表示你想要用一个MyISAM表格,请用ENGINE表选项指出来: CREATE TABLE t (i INT) ENGINE = MYISAM; 如下是MyISAM存储引擎的一些特... 阅读全文
posted @ 2017-04-01 11:50 ChavinKing 阅读(392) 评论(0) 推荐(0) 编辑
摘要:InnoDB概述 InnoDB给MySQL提供了具有提交,回滚和崩溃恢复能力的事务安全(ACID兼容)存储引擎。InnoDB锁定在行级并且也在SELECT语句提供一个Oracle风格一致的非锁定读。这些特色增加了多用户部署和性能。没有在InnoDB中扩大锁定的需要,因为在InnoDB中行级锁定适合非常小的空间。InnoDB也支持FOREIGN KEY强制。在SQL查询中,你可以自由地将InnoDB... 阅读全文
posted @ 2017-04-01 11:49 ChavinKing 阅读(929) 评论(0) 推荐(0) 编辑
摘要:InnoDB存储引擎中的表非常像Oracle中的索引组织表,每张表必须得有主键,如果表在创建时没有显示定义主键,则根据以下原则自动创建主键: 1)如果有非空的唯一索引,则该索引所在的列为主键; 2)如果不符合上述条件,自动创建一个6个字节的指针为主键。 InnoDB存储引擎的逻辑存储结构和Oracle几乎一样,从大到小分别为:表空间、段、区、页,它们的关系如下图所示: 表空间 我们知道InnoD... 阅读全文
posted @ 2017-04-01 11:48 ChavinKing 阅读(367) 评论(0) 推荐(0) 编辑
摘要:Mysql权限系统(由mysql权限表进行控制user和db)通过下面两个方面进行认证: 1)对于连接的用户进行身份验证,合法的通过验证,不合法的拒绝连接。 2)对于通过连接认证的用户,可以在合法的范围内对数据库进行操作。 Mysql的权限表在数据库启动时就被载入内存,当用户通过身份认证后,就可以在 阅读全文
posted @ 2017-04-01 11:46 ChavinKing 阅读(238) 评论(0) 推荐(0) 编辑
摘要:[root@chavinking mysql]# scripts/mysql_install_db --user=mysqlInstalling MySQL system tables...2016-12-02 00:05:00 0 [Warning] TIMESTAMP with implicit 阅读全文
posted @ 2017-04-01 11:46 ChavinKing 阅读(397) 评论(0) 推荐(0) 编辑
摘要:MySQL参数文件: MySQL数据库初始化参数由参数文件来设置,如果没有设置参数文件,mysql就按照系统中参数的默认值来启动。 在windows和linux上,参数文件可以被放在多个位置,数据库启动时按照不同的顺序来搜索,如果多个位置都有参数文件,则搜索顺序靠后的参数文件中的参数将覆盖前的参数。 阅读全文
posted @ 2017-04-01 11:45 ChavinKing 阅读(1123) 评论(0) 推荐(0) 编辑
摘要:mysql从3.23开始提供复制功能,复制指将主库的ddl和dml操作通过binlog文件传送到从库上执行,从而保持主库和从库数据同步。mysql支持一台主库同时向多台从库复制,从库同时也可以作为其他从库的主库,从而实现级联复制功能。mysql复制功能相当于oracle数据库的逻辑dg功能。 mys 阅读全文
posted @ 2017-04-01 11:44 ChavinKing 阅读(249) 评论(0) 推荐(0) 编辑
摘要:准备:主备库版本一致,正常安装软件。 1、主库上设置一个复制使用的账户: mysql> grant replication slave on *.* to 'rep1'@'192.168.100.136' identified by 'dbking'; Query OK, 0 rows affect 阅读全文
posted @ 2017-04-01 11:44 ChavinKing 阅读(271) 评论(0) 推荐(0) 编辑
摘要:一、复制一些常见设置 1、mysql复制启动时参数: mysql启动时的参数包括:master_host,master_port,master_user,master_password,master_log_file,master_log_pos。这几个参数需要在从库上配置,用来记录需要复制的主数据 阅读全文
posted @ 2017-04-01 11:43 ChavinKing 阅读(304) 评论(0) 推荐(0) 编辑
摘要:半同步复制架构在主库提交一个事务后,commit完成即反馈客户端,无需等待推送binlog完成,如图: 半同步复制在主库完成一个事务后,需等待事务信息写入binlog日志并且至少有一个从库写入relay log日志后才能commit完成反馈客户端。架构设计如图: 半同步复制在msyql5.5使用插件 阅读全文
posted @ 2017-04-01 11:42 ChavinKing 阅读(216) 评论(0) 推荐(0) 编辑
摘要:1、mysql官网下载mysql-5.5.53-winx64.msi文件并保存到磁盘相应目录。 2、图形化安装mysql数据库: 1)双击mysql-5.5.53-winx64.msi,出现欢迎界面,默认,next: 2)下图中接受说明,next: 3)选择custom,next: 4)根据需要选择 阅读全文
posted @ 2017-04-01 11:39 ChavinKing 阅读(421) 评论(0) 推荐(0) 编辑
摘要:1、解压mysql zip软件包 2、配置环境变量 3、修改配置文件my_default.ini添加如下: [mysqld] basedir=D:\MySQL\MySQL Server 5.6(mysql所在目录) datadir=D:\MySQL\MySQL Server 5.6\data (my 阅读全文
posted @ 2017-04-01 11:38 ChavinKing 阅读(234) 评论(0) 推荐(0) 编辑
摘要:1、下载并解压下载的noinstall安装包到指定目录。 2、配置MySQL数据库: 在mysql安装目录下my-default.ini文件中最少添加以下两行,更多的参数以后详细说明: [mysqld] basedir=D:\MySQL\MySQL Server 5.6(mysql所在目录) datadir=D:\MySQL\MySQL Server 5.6\data (mysql所在目录\da... 阅读全文
posted @ 2017-04-01 11:37 ChavinKing 阅读(237) 评论(0) 推荐(0) 编辑
摘要:建组、建用户: [root@dbking mysql]# groupadd mysql [root@dbking mysql]# useradd -g mysql mysql 解压安装程序: [root@dbking mysql]# tar -zxvf mysql.tar.gz [root@dbki 阅读全文
posted @ 2017-04-01 11:36 ChavinKing 阅读(5126) 评论(0) 推荐(0) 编辑
摘要:1、建立操作系统用户和组 [root@faspdev ~]# groupadd mysql [root@faspdev ~]# useradd -g mysql mysql 2、解压安装文件 [root@faspdev ~]# cd /usr/local/ [root@faspdev local]# 阅读全文
posted @ 2017-04-01 11:35 ChavinKing 阅读(446) 评论(0) 推荐(0) 编辑
摘要:1、下载上传mysql server和client rpm包: [root@faspdev mnt]# ls MySQL-client-5.5.53-1.el6.x86_64.rpm MySQL-server-5.5.53-1.el6.x86_64.rpm 2、安装mysql数据库: 1)安装mys 阅读全文
posted @ 2017-04-01 11:34 ChavinKing 阅读(1113) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示