2017年8月

分类: Linux

Nginx配置url重写

url重写是指通过配置conf文件,以让web的url中达到某种状态时则定向/跳转到某个规则,比如常见的伪静态、301重定向、浏览器定向等等rewrite语法在配置文件的server块中写,如:server { rewrite 规则 定向路径 重写类型; }规则:可以是字符串或者正则来表示想匹配的目标url定向路径:表示匹配到规则后要定向的路径,如果规则里有正则,则可以使用$inde...

阅读全文 »

分类: Oracle

Linux设置HugePages操作记录

当大量内存用于 Oracle 数据库时,操作系统将消耗大量资源来管理虚拟地址到物理地址转换,其结果往往是一个非常大的页表结构。由于每条页表条目包含进程正在使用的所有内存页面的虚拟地址到物理地址的转换,因此对于非常大的系统全局区 (SGA),每个进程的页表条目都可能很大。例如,使用 8 GB 内存的 Oracle 数据库进程的页表条目将达 8 GB/4 KB(即 2097152 条记录或页面)...

阅读全文 »

分类: Linux

Hugepages参数说明及使用注意事项

Hugepages是从Linux kernal 2.6后被引入的,其目的是使用更大的memory page size以适应越来越大的系统内存,使用hugepage可以用更大的内存页来取代传统的4K页面。page tablepage table是操作系统上的虚拟内存系统的数据结构模型,用于存储虚拟地址与物理地址的对应关系。当我们访问内存时,首先访问page table,然后Linux在通过pa...

阅读全文 »

分类: Oracle

Oracle用户密码含特殊字符时的登陆设置

当Oracle数据库用户的密码含特殊字符如 @ 时,直接使用正常的密码输入,由于oracle将@后的字符解析为网络服务名而导致登陆失败如下演示 用户名为:wang密码为:oracle@1网络服务名为:sun 的情况:Linux平台'wang/"oracle@1"'@sun --1个双引号扩密码,1个单引号扩 用户名+密码,即: '用户名/"密码"...

阅读全文 »

分类: Oracle

Oracle11g安装界面中文乱码解决方法

在Linux的X window桌面里安装oracle,弹出的oracle界面为乱码(方块)原因:oracle安装默认没有中文语言包,只有用英文,但是系统设置的默认语言是zh_cn.UTF-8,所以会出现方块乱码,CentOS6.X切换到root账号,执行export LANG=en_USvim /etc/sysconfig/i18n LANG="en_US"(不会出现乱码...

阅读全文 »

分类: Linux

Linux crontab配置文件

cron程序是 Linux 下计划任务,就是在约定的时间执行已经计划好的工作。我们可以把 crond 设置为开机时自动启动,crond 启动后,它会读取配置文件(全局性配置文件/etc/crontab,以及用户的配置文件),然后 crond 会根据命令和执行时间来按时来调用度工作任务。crond 程序默认开机启动,如果没有启动,可以运行 【/etc/init.d/cron start】 命令...

阅读全文 »

分类: MySQL

binlog开启与删除及参数说明

MySQL Server 有四种类型的日志——Error Log、General Query Log、Binary Log 和 Slow Query Log。Error Log:错误日志,记录 mysqld 的一些错误。General Query Log:一般查询日志,记录 mysqld 正在做的事情,比如客户端的连接和断开、来自客户端每条 Sql Statement 记录信息;如果你想准确...

阅读全文 »

分类: MySQL

GTID备份恢复注意事项

MySQL工作在GTID模式做备份恢复的时候,有时需要恢复出来的 MySQL 实例可以作为从库连上原来的主库继续复制,这就要求从备份恢复出来的 MySQL 实例拥有和主数据库数据一致的 gtid_executed 值。这也是通过设置 gtid_purged实现的,下面看下 mysqldump 做备份的例子。通过mysqldump在主库上做一个全量备份这里使用 --all-databases选...

阅读全文 »

分类: MySQL

MySQL主从同步log_slave_updates参数介绍

默认的情况下log_slave_updates参数是关闭的,从服务器从主服务器接收到的更新不记入它的二进制日志。该选项告诉从服务器将其SQL线程执行的更新记入到从服务器自己的二进制日志。为了使该选项生效,还必须用--logs-bin选项启动从服务器以启用二进制日志。如果想要应用链式复制服务器,应使用--logs-slave-updates。例如,可能你想要这样设置:A -> B -&g...

阅读全文 »

分类: MySQL

MySQL的replicatin环境中master/slave常用参数

master所有参数log-bin=mysql-bin //控制master的是否开启binlog记录功能;二进制文件最好放在单独的目录下,这不但方便优化、更方便维护。重新命名二进制日志很简单,只需要修改[mysqld]里的log_bin选项,这里有一点需要注意,如下例子:log_bin=/home/mysql/binlog/binlog.log[root@localhost ~]# l...

阅读全文 »

分类: MySQL

MySQL5.7.18基于GTID的主从复制过程实现

GTID是5.6时加入的,在5.7中被进一步完善,生产环境建议在5.7版本中使用.GTID全称为Global Transaction Identifiers,全局事务标识符.GTID的复制完全是基于事务的,每一个事务对应一个GTID.因此事务执行具有唯一ID,主从复制时,无需再指定POS位置,只要对比ID有没被执行过,并且每个ID仅执行一次.GTID复制限制:不支持涉及非事务存储引擎的更新不...

阅读全文 »

分类: MySQL

MySQL GTID的原理

GTID介绍GTID是MySQL 5.6的新特性,其全称是Global Transaction Identifier,可简化MySQL的主从切换以及Failover。GTID用于在binlog中唯一标识一个事务。当事务提交时,MySQL Server在写binlog的时候,会先写一个特殊的Binlog Event,类型为GTID_Event,指定下一个事务的GTID,然后再写事务的Binlo...

阅读全文 »

分类: MySQL

如何避免ibdata1文件大小暴涨及释放空间

遇到InnoDB的共享表空间文件ibdata1文件大小暴增时,应该如何处理?1、问题背景用MySQL/InnoDB的童鞋可能也会有过烦恼,不知道为什么原因,ibdata1文件莫名其妙的增大,不知道该如何让它缩回去,就跟30岁之后男人的肚腩一样,汗啊,可喜可贺的是我的肚腩还没长出来,hoho~正式开始之前,我们要先知道ibdata1文件是干什么用的。ibdata1文件是InnoDB存储引擎的共...

阅读全文 »