mysql
IT技术管理认知&技能全面升级
不辜负自己,成就更好的自己!
展开
-
mac 安装mysql
哎,小弟第一次使用mac来办公,这个高大上的东东,确实和原创 2014-09-01 11:01:55 · 2174 阅读 · 0 评论 -
linux内存管理内幕
为什么必须管理内存内存管理是计算机编程最为基本的领域之一。在很多脚本语言中,您不必担心内存是如何管理的,这并不能使得内存管理的重要性有一点点降低。对实际编程来说,理解您的内存管理器的能力与 局限性至关重要。在大部分系统语言中,比如 C 和 C++,您必须进行内存管理。本文将介绍手工的、 半手工的以及自动的内存管理实践的基本概念。追溯到在 Apple II 上进行汇编语言编程的时代,转载 2016-02-29 12:04:46 · 1983 阅读 · 0 评论 -
mysql之加锁处理分析
背景 MySQL/InnoDB的加锁分析,一直是一个比较困难的话题。我在工作过程中,经常会有同事咨询这方面的问题。同时,微博上也经常会收到MySQL锁相关的私信,让我帮助解决一些死锁的问题。本文,准备就MySQL/InnoDB的加锁问题,展开较为深入的分析与讨论,主要是介绍一种思路,运用此思路,拿到任何一条SQL语句,都能完整的分析出这条语句会加什么锁?会有什么样的使用风险?甚转载 2016-02-19 11:32:18 · 620 阅读 · 0 评论 -
mysql之锁
前言为了保证数据的一致完整性,任何一个数据库都存在锁定机制。锁定机制的优劣直接应想到一个数据库系统的并发处理能力和性能,所以锁定机制的实现也就成为了各种数据库的核心技术之一。本章将对MySQL中两种使用最为频繁的存储引擎MyISAM和Innodb各自的锁定机制进行较为详细的分析。 MySQL锁定机制简介数据库锁定机制简单来说就是数据库为了保证数据的一致性而使各种共享转载 2016-02-19 11:25:20 · 566 阅读 · 0 评论 -
mysql之分布式事务
分布式事务通常采用2PC协议,全称Two Phase Commitment Protocol。该协议主要为了解决在分布式数据库场景下,所有节点间数据一致性的问题。在分布式事务环境下,事务的提交会变得相对比较复杂,因为多个节点的存在,可能存在部分节点提交失败的情况,即事务的ACID特性需要在各个数据库实例中保证。总而言之,在分布式提交时,只要发生一个节点提交失败,则所有的节点都不能提交,只有当所有节转载 2016-02-18 20:46:12 · 5121 阅读 · 0 评论 -
mysql之复制
MYSQL 从3.25.15版本开始提供数据库复制功能(replication)。mysql复制是指从一个mysql主服务器(MASTER)将数据复制到另一台或多台mysql从服务器(SLAVE)的过程,将主数据库的DDL和DML操作通过二进制日志传到复制服务器上,然后在从服务器上对这些日志重新执行,从而使从服务器的数据保持同步。 在mysql中,复制操作是异步进行转载 2016-02-18 20:38:48 · 651 阅读 · 0 评论 -
mysql之优化
优化MYSQL数据库是DBA和开发人员的必备技能MYSQL优化一方面是找出系统瓶颈,提高MYSQL数据库整体性能;另一方面需要合理的结构设计和参数调整,以提高用户操作响应的速度;同时还有尽可能节省系统资源,以便系统可以提供更大负荷的服务。myisam允许没有任何索引和主键的表存在,个人觉得没有主键的myisam表都属于堆表,因为MYSQL不支持非主键的聚集索引。转载 2016-02-18 20:35:30 · 781 阅读 · 0 评论 -
mysql之日志
MYSQL里的日志主要分为4类,使用这些日志文件,可以查看MYSQL内部发生的事情。分别是1、错误日志:记录mysql服务的启动、运行、停止mysql服务时出现的问题2、查询日志:记录建立的客户端连接和执行的语句3、二进制日志:记录所有更改数据的语句,可以用于数据复制4、慢查询日志:记录所有执行时间超过long_query_time的所有查询或不使用索引的查转载 2016-02-18 19:49:39 · 1058 阅读 · 0 评论 -
mysql之备份和恢复
逻辑备份方法使用MYSQLDUMP命令备份MYSQLDUMP是MYSQL提供的一个非常有用的数据库备份工具。mysqldump命令执行时将数据库备份成一个文本文件,该文件中实际上包含了多个CREATE 和INSERT语句,使用这些语句可以重新创建表和插入数据MYSQLDUMP的语法和选项mysqldump -u user -p pwd -h host dbn转载 2016-02-18 19:47:41 · 1266 阅读 · 0 评论 -
mysql之视图
使用视图的理由是什么?1、安全性:一般是这样做的:创建一个视图,定义好该视图所操作的数据。之后将用户权限与视图绑定,这样的方式是使用到了一个特性:grant语句可以针对视图进行授予权限。2、查询性能提高3、有灵活性的功能需求后,需要改动表的结构而导致工作量比较大,那么可以使用虚拟表的形式达到少修改的效果。这是在实际开发中比较有用的4、复杂的查询需求,转载 2016-02-18 19:45:42 · 541 阅读 · 0 评论 -
mysql之索引
索引是在存储引擎中实现的,因此每种存储引擎的索引都不一定完全相同,并且每种存储引擎也不一定支持所有索引类型。根据存储引擎定义每个表的最大索引数和最大索引长度。所有存储引擎支持每个表至少16个索引,总索引长度至少为256字节。大多数存储引擎有更高的限制。MYSQL中索引的存储类型有两种:BTREE和HASH,具体和表的存储引擎相关;MYISAM和InnoDB存储引擎只支持BT转载 2016-02-18 19:42:53 · 599 阅读 · 0 评论 -
mysql之插入、更新、删除
插入将多行查询结果插入到表中语法INSERT INTO table_name1(column_list1) SELECT (column_list2) FROM table_name2 WHERE (condition)INSERT INTO SELECT 在SQLSERVER里也是支持的table_name1指定待插入数据的表;column_list1转载 2016-02-18 19:37:10 · 685 阅读 · 0 评论 -
mysql之协议分析
1 交互过程MySQL客户端与服务器的交互主要分为两个阶段:握手认证阶段和命令执行阶段。1.1 握手认证阶段握手认证阶段为客户端与服务器建立连接后进行,交互过程如下:服务器 -> 客户端:握手初始化消息客户端 -> 服务器:登陆认证消息服务器 -> 客户端:认证结果消息1.2 命令执行阶段客户端认证成功后,会进入命令执行阶段,交互过程如下:客转载 2016-02-18 19:30:32 · 800 阅读 · 0 评论 -
mysql之查询
MySQL中select的基本语法形式:select 属性列表from 表名和视图列表[where 条件表达式][group by 属性名[having 条件表达式]][order by 属性名[asc|desc]][limit ,row count] 说明:where子句:按照“条件表达式”指定的条件进行查询。group by子句:按照“属性转载 2016-02-18 19:24:45 · 593 阅读 · 0 评论 -
mysql之运算符
安全等于运算符()这个操作符和=操作符执行相同的比较操作,不过可以用来判断NULL值。在两个操作数均为NULL时,其返回值为1而不为NULL;而当一个操作数为NULL时,其返回值为0而不为NULL。下面分别是 SELECT NULL 1 SELECT 10 SELECT NULL NULL 的执行结果在两个操作数均为NULL时,其返回值为1而不为NUL转载 2016-02-18 19:18:20 · 595 阅读 · 0 评论 -
mysql之权限管理
在mysql数据库中,有mysql_install_db脚本初始化权限表,存储权限的表有:1、user表2、db表3、host表4、table_priv表5、columns_priv表6、proc_priv表 MySQL存取控制包含2个阶段:阶段1:服务器检查你是否允许连接。阶段2:假定你能连接,服务器检查你发出的每个请求。看转载 2016-02-18 19:07:52 · 1041 阅读 · 0 评论 -
linux-proc
The /proc filesystem is used to store many system configuration parameters. It is a virtual filesystem that resides in the kernels memory. Some of the areas in this filesystem cannot be written to by转载 2016-03-02 12:20:08 · 836 阅读 · 0 评论 -
c语言操作mysql
执行 SQL 语句现在,我们已经有了一个连接,并且知道如何处理错误,是时候讨论使用我们的数据库来作一些实际工作了。执行所有类型的 SQL 的主关键字是 mysql_query:int mysql_query(MYSQL *connection, const char *query)正如您所见,它非常简单。它取一个指向连接结构的指针和包含要执行的 SQL 的文本字符串;与转载 2016-01-25 14:20:26 · 6009 阅读 · 0 评论 -
mysql GTID Replication
一、GTID的概述:1、全局事物标识:global transaction identifieds。2、GTID事物是全局唯一性的,且一个事务对应一个GTID。3、一个GTID在一个服务器上只执行一次,避免重复执行导致数据混乱或者主从不一致。4、GTID用来代替classic的复制方法,不在使用binlog+pos开启复制。而是使用master_auto_posti转载 2016-08-01 15:31:33 · 7557 阅读 · 0 评论