Mysql
Oooover
喜欢Linux、Python,Spark,数据挖掘,分布式计算,流式计算
展开
-
MySQL数据库怎么实现远程连接访问
转自http://www.cr173.com/html/5947_1.html 以下的文章主要介绍的是实现MySQL远程连接的实际操作流程,本文主要是由其相关的实际应用代码来引出MySQL远程连接的具体操作步骤,以下就是文章的主要内容描述,希望会给你带来一些帮助在此方面。 1、进入MySQL,创建一个新用户root,密码为root: 格式:grant 权限 on 数据库名.表名 to 用转载 2013-07-24 07:51:34 · 1235 阅读 · 0 评论 -
高性能的MySQL(5)索引策略-覆盖索引与索引排序
一、覆盖索引 索引是一种查找数据的高效方式,但是MySQL也可以使用索引来直接获取列的数据,这样就不再需要读取数据行。如果索引的叶子节点中已经包含要查询的数据,那么还有什么必要回表查询呢? 如果一个索引包含或者说覆盖所有需要查询的字段的值,我们就称之为“覆盖索引”。 覆盖索引的好处: 1、索引条目通常远小于数据行大小,所以如果只需要读取索引,就极大的减少数据访问量。这对My转载 2013-10-24 09:23:07 · 2337 阅读 · 1 评论 -
高性能的MySQL(1)锁和MVCC
一、MySQL逻辑架构 客户端 链接/线程处理 查询缓存 解析器 优化器 存储引擎 二、锁 1、读写锁 读锁是共享的,是互相不阻塞的,多个客户在同一时间读取同一资源,互补干扰。写锁是排他的,会阻塞其他的写锁和读锁。 2、隐式和显式锁定 隐式:InnoDB,在转载 2013-10-24 09:14:07 · 856 阅读 · 0 评论 -
Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock'
今天服务器遇到了一个很熟悉的问题 输入 #mysql -u root -p ERROR 2002 (HY000):Can't connect to local MySQL server 随即上网找寻答案 根据大家提供的方法我逐一尝试 方案1. 1.#ps -A|grep mysql 显示类似: 1829 ? 00:00:00 mysqld_safe转载 2013-11-01 11:16:55 · 4157 阅读 · 0 评论 -
搭建mysql负载均衡及高可用环境
目标:使用两台主机实现 Mysql 的负载均衡及冗余,并做到双主互备; 环境:rhel5.8,mysql-5.0.77,keepalived-1.2.7,haproxy-1.4.20; 说明: keepalived 实现通过 vrrp协议,通过使一个虚拟IP地址(或称浮动IP)在主备设备间的切换来达到主机冗余; 而客户机通过访问这个虚拟IP 来获取服务; haprox转载 2013-11-05 09:00:28 · 1027 阅读 · 0 评论 -
查看mysql数据库字符集,设置mysql字符集为utf8
一、查看 MySQL 数据库服务器和数据库字符集。 mysql> show variables like '%char%'; +--------------------------+-------------------------------------+------ | Variable_name | Value |...... +-------------------------转载 2013-11-22 12:13:15 · 1395 阅读 · 0 评论 -
innobackupex参数说明
innobackupex [options] Options: --apply-log Prepare a backup in BACKUP-DIR by applying the transaction log file named "xtrabackup_logfile" located in the same directory. Also, c转载 2013-12-05 11:12:10 · 1136 阅读 · 0 评论 -
xtrabackup备份与恢复数据库
之前我在维护mysql数据库的时候,使用mysqldump来进行备份与恢复,在备份的时候锁住表,然后全部备份,在数据少的时候没问题,但如果数据很多,不允许锁表,同时需要恢复数据块的情况,mysqldump就不适合了,我在恢复一个4G数据文件的数据库的时候,恢复的数据是使用mysqldump的数据,恢复了3个小时还没有反应,造成的影响很严重,所以我开始寻找其他的别发软件来满足以上的需求,幸好找到了,转载 2013-12-05 13:55:28 · 1619 阅读 · 0 评论 -
Mysql 删除表名中有特殊字符的表
mysql中表名包含特殊字符的处理原创 2013-12-12 14:27:19 · 5722 阅读 · 1 评论 -
MySql ibdata1文件太大如何缩小
MySql ibdata1文件太大如何缩小 MySql innodb如果是共享表空间,ibdata1文件越来越大,达到了30多个G,对一些没用的表进行清空: truncate table xxx; 然后optimize table xxx; 没有效果 因为对共享表空间不起作用。 mysql ibdata1存放数据,索引等,是MYSQL的最主要的数据。 如果不把数据分开存放的话转载 2014-04-23 11:03:13 · 2320 阅读 · 0 评论 -
高性能的MySQL(5)索引策略一聚簇索引
聚簇索引,并不是一种单独的索引类型,而是一种数据存储方式。InnoDB的聚簇索引实际上在同一个结构中保存了B-Tree索引和数据行信息。 因为无法把数据行存放在两个不同的地方,所以一个表只能有一个聚簇索引(不过可以通过覆盖索引来模拟,稍后再介绍)。 这里主要讨论InnoDB引擎,InnoDB通过主键聚集数据,如果没有主键会选择一个非空的唯一索引,如果还没有,InnoDB会隐式定义一个主转载 2013-10-24 09:22:26 · 873 阅读 · 0 评论 -
高性能的MySQL(5)索引策略
一、索引的优点 1、索引可以大大减少服务器需要扫描的数据量 2、索引可以帮助服务器避免排序和临时表。 3、索引可以将随即I/O变为顺序I/O 二、索引策略 1、独立的列 独立的列是指索引列不能是表达式的一部分,也不能是函数参数。例如: 一个有500W条记录的表,id是主键。 所以要始终将索引列单独放在比较符号的一侧。 2、前缀索引和转载 2013-10-24 09:21:24 · 681 阅读 · 0 评论 -
高性能的MySQL(5)创建高性能的索引一哈希索引
哈希索引(hash index)基于哈希表实现,只有精确匹配索引的所有列的查询才有效,对于每一行数据,存储引擎都会对所有索引列计算一个哈希码,不同键值的行计算出来的哈希码也不一样,哈希码保存在哈希索引中,同时哈希表中保存指向每个数据的指针。 1、Memory引擎支持哈希索引,也支持B-Tree索引,而且支持非唯一的哈希索引,如果多个列的哈希值相同,索引会以链表的方式存放多个记录指针到同一个哈转载 2013-10-24 09:20:44 · 781 阅读 · 0 评论 -
MySQL主从复制配置
Mysql的主从复制至少是需要两个Mysql的服务,当然Mysql的服务是可以分布在不同的服务器上,也可以在一台服务器上启动多个服务。 (1)首先确保主从服务器上的Mysql版本相同 (2)在主服务器上,设置一个从数据库的账户,使用REPLICATION SLAVE赋予权限,如: mysql> GRANT REPLICATION SLAVE ON *.* TO 'slave001'@转载 2013-10-22 14:00:39 · 657 阅读 · 0 评论 -
mysql 主从复制
1、主从服务器分别作以下操作: 1.1、版本一致 1.2、初始化表,并在后台启动mysql 1.3、修改root的密码 2、修改主服务器master: #vi /etc/my.cnf [mysqld] log-bin=mysql-bin //[必须]启用二进制日志 server-id=222 //[必须转载 2013-10-22 14:02:08 · 648 阅读 · 0 评论 -
搭建mysql负载均衡及高可用环境
目标:使用两台主机实现 Mysql 的负载均衡及冗余,并做到双主互备; 环境:rhel5.8,mysql-5.0.77,keepalived-1.2.7,haproxy-1.4.20; 说明: keepalived 实现通过 vrrp协议,通过使一个虚拟IP地址(或称浮动IP)在主备设备间的切换来达到主机冗余; 而客户机通过访问这个虚拟IP 来获取服务; haproxy 是一款转载 2013-10-29 09:03:13 · 829 阅读 · 0 评论 -
高性能的MySQL(2)慢查询
一、剖析MySQL查询 1、首先从慢查询开始,慢查询是开销最低,精度最高的测量查询时间的工具。 a、开始mysql的慢查询,修改my.conf 1 2 3 4 5 6 7 8 9 10 11 [mysqld] #开启慢查询 log_slow_queries = O转载 2013-10-24 09:15:23 · 724 阅读 · 0 评论 -
高性能的MySQL(2)单条SQL性能
实际应用中,分析单条查询SQL性能,有3种方法:show status、show profile和慢查询日志。 一、使用SHOW PROFILE 1、默认是禁用的,在会话中开启 1 2 #开启profile set profiling=1; 2、当一个查询到达服务器时,此工具会把分析信息记录到转载 2013-10-24 09:16:21 · 639 阅读 · 0 评论 -
高性能的MySQL(3)单条查询问题还是服务器问题
发现问题的时候,要确定是单条查询的问题还是服务器的问题,如果服务器上的所有程序都变慢了,又突然都变好了,每一条查询都变慢了,那么慢查询就不一定是原因,反过来说,如果服务器整体运行没有问题,只有某条查询偶尔变慢,就需要将注意力放到这条特定查询上。 为了确定问题的根源,一般我们通过三种技术来解决。 1、show global status 这个方法实际就是以较高的频率比如一秒执行一次转载 2013-10-24 09:17:15 · 771 阅读 · 0 评论 -
高性能的MySQL(4)数据类型的优化
一、基本原则 1、更小的通常更好 更小的数据类型通常更快,因为占用更少的磁盘、内存和CPU缓存,并且处理时需要的CPU周期也更少。 但是要确保没有低估需要存储的值的范围,因为在schema中的多个地方增加数据类型的范围是个非常耗时的操作。 2、简单就好 例如,整数比字符串操作代价更低,应该用内建类型而不是字符串来存储时间和日期,用整型存储IP。 3、尽量避免NU转载 2013-10-24 09:18:07 · 1157 阅读 · 0 评论 -
高性能的MySQL(4)Schema设计
一、设计中的陷阱 1、太多的列 MySQL的存储引擎API工作时需要在服务器层和存储引擎层之间通过行缓冲格式拷贝数据,然后在服务器层将缓冲内容解码为各个列。这是一个代价很高的操作,转换的代价依赖于列的数量,列太多的话,转换代价就会很高。 2、太多的关联 一个粗略的经验法则,如果希望查询和并发行好,单个查询不要超过10个表的关联。 3、过度的枚举 修改一个枚举列的值时转载 2013-10-24 09:18:58 · 950 阅读 · 0 评论 -
高性能的MySQL(5)创建高性能的索引一B-Tree索引
一、索引的类型 MySQL中,索引是在存储引擎层实现的,而不是服务器层,所以没有统一的标准。 MySQL支持的索引类型如下: 1、B-Tree索引(也包括B+Tree索引,统称为B-Tree索引,只是数据结构上的不同,特性上是一样的) 使用B-Tree数据结构来存储数据,实际上很有存储引擎使用的是B+Tree。关于BTree、B-Tree、B+Tree的区别请看本博客的附件转载 2013-10-24 09:19:50 · 807 阅读 · 0 评论 -
mysql 数据文件目录迁移
最简单的操作,修改mysql数据文件的目录原创 2014-01-14 16:03:31 · 1041 阅读 · 0 评论