Java核心技术 数据存储与数据库 分布式系统与计算 系统研发与运维 编程语言
暂时未有相关通用技术能力~
阿里云技能认证
详细说明1. 创建用户组 注意用户组权限 2. 添加用户 3. 设置报警媒介 4. 设置Action 注意:添加新主机后,要确认权限分配
nginx端相关操作 在nginx.conf中添加如下内容 #vi nginx.conf ... location /nginx-status { stub_status on; access_log off; allow 192.
server端安装 安装yum源(这里我们使用的是阿里云提供的repo) # rpm -ivh http://mirrors.aliyun.com/zabbix/zabbix/3.
原文链接 MySQL InnoDB事务的隔离级别有四级,默认是“可重复读”(REPEATABLE READ)。 未提交读(READ UNCOMMITTED)。
python的Dictionary类型是无序的,所以当我们想要字典安装插入的顺序输出时,我们可以使用collections的OrderedDict来实现 示例: from collections import OrderedDict favorite_la...
源码包下载 # wget http://nchc.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/3.
运维架构 硬件标准化(服务器、内存、系统版本) 软件标准化(应用版本) 运维自动化(监控、发布、CMDB) 监控报警(系统数据,应用指标的监控和出错时及时报警) 发布系统(代码发布,发布后的检查,代码的回滚,灰度发布) 服务器标准化(cobbler装机...
日志两种格式 物理的日志 记录完整的页 记录页中被修改的 内容 逻辑日志 记录执行的 SQL 语句 物理日志相对比较大,比如索引分裂是会影响很多记录,导致日志量很大 逻辑日志日志量会很小,但是会有部分执行 数据一致性问题 物理日志 优点:恢复时可直接通过日志覆盖,不依赖原页面上面的内容。
redo redo是数据库实例恢复的重要组成部分。其目的是保证数据库实例或服务器发生故障时,不会导致数据库崩溃,不会丢失已经提交的数据。并且通过RWA机制保证数据库被变更之前,其redo日志必须先写入日志缓冲区,而事务提交之前也必须首先保证将日志缓冲区和这个事务相关的redo信息写入到redo日志文件。
mysql checkpoint分为两种 sharp checkpoint fuzzy checkpoint sharp checkpoint sharp checkpoint会把所有已提交事务相关的脏页刷到磁盘,并记录最新的已提交事务的LSN号。
环境 mysql> select version(); +------------+ | version() | +------------+ | 5.6.
基本概念 查看可用字符集 mysql> show character set; +----------+-----------------------------+---------------------+--------+ | Charset | ...
原文链接 InnoDB’s checkpoint algorithm is not well documented. It is too complex to explain in even a long blog post, because to under...
字符串函数 mysql> select concat('a','b','c'),concat('a',null); +---------------------+------------------+ | concat('a','b','c') | c...
查看一下mysql版本 mysql> select version(); +------------+ | version() | +------------+ | 5.
relay-log-info 记录SQL线程读取Master binlog的位置,用于Slave 宕机后根据文件中记录的pos点恢复Sql线程 master-info 记录IO线程读取已经读取到的master binlog位置,用于slave宕机...
安装 # yum -y install pciutils 查看RAID设备 # lspci|grep RAID 03:00.0 RAID bus controller: LSI Logic / Symbios Logic MegaRAID SAS-3 31...
5.6mysql半同步复制的原理图 通过图片,我们看到,当master提交事务时,并不等待slave节点确认。所以并不保证slave节点的事务是否也能commit成功(例如duplicate key error)。
BIOS设置 其中 #设置服务器在最大性能模式运行(很重要) Power Management → Power Profile Maximum Performance #intel超线程选项 Intel Hyperthreading O...
step 1: 全备 # innobackupex --defaults-file=/etc/my.cnf --no-timestamp /home/ssd/ali_backup/full_xtra_3306_20160826 --user root --...
STEP 1: 生成备份并prepare 主库做一个全备,做好看到 completed OK 表明备份成功 # innobackupex --defaults-file=/etc/my.
恢复到特定的时间点,可以使用innobackupex 和数据库binlog日志 首先,我们需要一个数据库快照,使用innobackupex 生成一个全库备份 # innobackupex --defaults-file=/etc/my.
在mysqlGTID下,使用 SET GLOBAL SQL_SLAVE_SKIP_COUNTER = n 会产生如下错误 ERROR 1858 (HY000): sql_slave_skip_counter can not be set when the server is running with @@GLOBAL.
软件版本 mysql> select version(); +------------+ | version() | +------------+ | 5.6.27-log | +------------+ 1 row in set (0.00 sec) 官方文档地址 ROW模式 优点: row level模式下,bin-log中可以不记录执行的sql语句的上下文相关的信息,仅仅只需要记录那一条记录被修改了,修改成什么样了。
系统环境 # cat /etc/redhat-release CentOS release 6.5 (Final) # uname -a Linux miles 2.
SHOW BINLOG EVENTS [IN 'log_name'] [FROM pos] [LIMIT [offset,] row_count] 用于在二进制日志中显示事件。
参考文档 安装 Step 1. 安装MariaDB Enterprise repository configuration package # rpm -i http://downloads.
单实例安装请参照该文档,本文在此基础上进行安装 多实例部署优势: 充分利用系统资源 mysql为单进程多线程的模型,它对多核的利用不是很好,无法充分利用系统资源。
线上部署考虑因素: 版本选择,5.1、5.5还是5.6? 5.1官方已不再维护,不建议 5.5是现在线上使用最多的版本 5.6最新的稳定版,已发布3年多,现在使用的也很多 分支选择,官方社区版?persona server ? Mariadb ? ...
原文链接 Nginx is well-known for its ability to act as a reverse-proxy with small memory footprint.
原文链接 本文实例讲述了MySQL实现树状所有子节点查询的方法。分享给大家供大家参考,具体如下: 在Oracle 中我们知道有一个 Hierarchical Queries 通过CONNECT BY 我们可以方便的查了所有当前节点下的所有子节点。
插入缓冲 两次写 自适应哈希索引 异步IO 刷新邻接页 插入缓冲 innodb存储引擎对于非聚集索引的插入或更新操作,不是每一次直接插入到索引页中,而是先判断插入的非聚集索引页是否在缓冲池,若在,则直接插入;不在,则先放在一个insert buffer对象中。
checkpoint是为了解决: 缩短数据库恢复时间 缓冲池不够用时,将脏页刷新到磁盘 重做日志不可用时,刷新脏页 所以当数据库发生宕机时,数据库不需要重做所有的日志,因为checkpoint之前的页都已经刷新到磁盘了。
innodb内存区域除了缓冲池外,还有重做日志缓冲。innodb存储引擎会先将重做日志信息写入缓冲区,然后按照一定频率刷新到重做日志文件。其可由参数innodb_log_buffer_size进行控制。
LRU list innodb中新读取到的页,并不直接放在LRU列表首部,而是放在midpoint位置。默认该位置在LRU列表5/8处。midpoint可有参数innodb_old_blocks_pct控制 mysql> show variables lik...
innodb存储引擎缓冲池设置为21GB mysql> show variables like 'innodb_buffer_pool_size'\G; *************************** 1. row *************************** Variable_name: innodb_buffer_pool_size Value: 21474836480 1 row in set (0.00 sec) innodb存储引擎的内存结构情况 可以设置多个缓冲池实例。
mysql主要由以下几部分组成 连接池组件 管理服务和工具组件 SQL接口组件 查询分析器组件 优化器组件 缓冲组件 插件式存储引擎 物理文件
master thread 核心的后台线程,主要负责将缓冲池中的数据异步刷新到磁盘,保证数据的一致性,包括脏页的刷新、合并插入缓冲、undo页的回收等。 IO thread 主要负责IO请求的回掉处理。
TCP/IP 当客户端和mysql实例不在同一台服务器上时,两台机器通过TCP/IP网络连接 # mysql -h192.168.74.128 -uroot -p 需要注意在通过TCP/IP连接时,mysql会先检查一张权限视图,用来判断客户端IP是否允许...
通过以下命令可以查看mysql 实例启动时,会在哪些位置查找配置文件 # mysql --help|grep my.cnf order of preference, my.
原文链接 本文介绍的实例成功的实现了动态行转列。下面我以一个简单的数据库为例子,说明一下。 数据表结构 这里我用一个比较简单的例子来说明,也是行转列的经典例子,就是学生的成绩 三张表:学生表、课程表、成绩表 学生表 就简单一点,学生学号、学生姓名两...
将表从一个引擎改为另一个引擎的方法 方法1: 最简单的方法 alter table test engine=innodb; 但是如果表数据量大,则需要执行很长时间。
innodb的MVCC是通过在每行记录后面保存两个隐藏的列来实现。一个保存行的创建时间,一个保存行的过期时间,存储的值为系统版本号。每开启一个新的事务,系统版本号都会自动增加。
配置percona的yum仓库 一、先安装依赖: yum install perl-DBI yum install perl-DBD-MySQL yum install perl-Time-HiRes yum install perl-IO-Soc...
#!/bin/bash freemem=$(cat /proc/meminfo | grep "MemFree" | awk '{print $2}') if [ $freemem -le 23500000 ];then date >> /tmp/mem.
#!/bin/sh PATH=/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin export JAVA_HOME=/usr/java/jdk1.
Oracle 11G在用EXPORT导出时空表不能导出 11G R2中有个新特性当表无数据时不分配segment以节省空间 解决方法 一、 insert一行再rollback就产生segment了。
原文链接 imp/exp 用户 表空间 users tablespace 使用exp把用户pwgh的数据导出后,再使用imp把数据导入另外一个数据库时。 发现一个问题,由于数据的导出用户pwgh的一些表建在表空间users里, 而我想把这些数据全部导入到另外一个数据库的某个表空间里,例如表空间pwgh_fs_tablespace。
原文链接 隐藏参数 (hidden parameters) ,由oracle内部使用,以 ‘_’ 开头。 可以通过以下两种方式查看所有隐藏参数: [sql] view plain copy SELECT i.
DBWR DBWR执行将数据块缓冲区写入数据文件的工作。 下列情况DBWR会将脏块写入磁盘 服务器进程将一缓冲区移入dirty链,当dirty链达到临界长度时,服务器进程会通知DBWR写入操作。