Welcome 微信登录

首页 / 数据库 / MySQL

关于Redis两种持久化方式的说明

关于Redis两种持久化方式的说明

在说Redis持久化之前,需要搞明白什么是数据库状态这个概念,因为持久化的就是将内存中的数据库状态保存到磁盘上。那么什么是数据库状态呢?Redis是一个key-value数据库服务器,一般默认是有16个数据库,可以使用select <index>命令进行切换(0-15),这每个非空的数据库又可以包含任意多个键值对,为了方便起见,我们将数据库服务器中的非空数据库以及它们的键值对通常为【数据库状态】,所以这里持久化,说的不是一个数据库,而是服务器上...
Redis中关于过期键的删除策略

Redis中关于过期键的删除策略

我们已经了解到了Redis是一种内存数据库,Redis中数据都是以key-value的形式存储在内存中,由Redis服务器来维护和管理这部分内存,内存是何足珍贵,不需要的数据或者是已经使用过的没用的数据是不会让它长久的存在于内存中的,毕竟我们还是要建设节约型社会的。所以我们可以通过给键设置生存时间或者过期时间来权衡有限的内存和不断增长的数据,设置过期时间的命令为:【expire key 时间长度(秒)】或者是【pexpire key 时间长度(毫秒)】 同...
Oracle 11g DataGuard使用总结

Oracle 11g DataGuard使用总结

Oracle 11g的dataguard相比于10g来说,最优越的特性应该算就是active dataguard了,这一点改进在很大意义上促使用户需要把数据库从10g升级到11g,读写分离在这个时候得到了升华,而且在后台会根据需要进行数据的同步,相比于使用10g,想读数据的时候把数据库启动到read only 阶段,但这个时候不接受日志同步数据,如果需要同步数据还需要把数据库再启动到mount阶段,感觉还是比较繁琐的。11g的active dataurad...
Oracle 10g 一主多备的搭建技巧

Oracle 10g 一主多备的搭建技巧

在Oracle数据库环境中,一主一备是比较传统的使用方式,在灾难发生的时候,可以灵活的切换主备角色,依然可以保持服务的可访问性。但是一些核心系统来说还是会有更多的过滤,一主一备似乎还是不够稳妥,如果主备出现问题,如果有另外一个备库还是有可选的余地,这种情况不是不可能发生,正是因为核心业务的需要还是需要保证数据的安全。很多场景下,一主两备会保持这样的场景,一主一备在同一个区域内,这样在出现问题的时候方便切换,如果区域出现故障,可以保证异地的机房可以顺利承接服...
Percona XtraDB Cluster集群的安装与配置

Percona XtraDB Cluster集群的安装与配置

Percona XtraDB Cluster是针对MySQL用户的高可用性和扩展性解决方案,基于Percona Server 。其包括了Write Set REPlication补丁,使用Galera 2.0库,这是一个针对事务性应用程序的同步多主机复制插件。Percona XtraDB Cluster特点: (1)同步复制,事务在所有集群节点要么同时提交,要么不提交。 (2)多主复制,可以在任意一个节点写入。 (3)从服务器上的并行应用事件,真正的...
MySQL主键约束和唯一性约束

MySQL主键约束和唯一性约束

MySQL主键约束和唯一性约束都是索引,它们的区别是:主键字段可以确保唯一性,但主键字段不能为NULL.唯一性约束可以确保唯一性,但唯一性约束的字段可以为NULL唯一性约束对含有NULL的记录不起作用,即可以重复加入含有NULL的记录,主键字段不能为NULLmysql-workbench无法创建多字段唯一性约束,可以在命令行手工增加增加多字段唯一性性约束mysql>alter table cmd_end_regexp add constraint d...
Node以数据块的形式读取文件

Node以数据块的形式读取文件

在Node中,http响应头信息中Transfer-Encoding默认是chunked。Transfer-Encoding:chunked Node天生的异步机制,让响应可以逐步产生。 这种发送数据块的方式在涉及到io操作的情况下非常高效。Node允许以数据块的形式往响应中写数据,也允许以数据块的形式读取文件。 这样可以有高效的内存分配,不需要把文件全部读取到内存中再全部响应给客户,在处理大量请求时可以节省内存。var http = require...
MySQL存储过程以及在Java中的程序调用

MySQL存储过程以及在Java中的程序调用

存储过程是一种存储在数据库中的程序(就像正规语言里的子程序一样),准确的来说,MySQL支持的“routines(例程)”有两种:一是我们说的存储过程, 二是在其他SQL语句中可以返回值的函数(使用起来和Mysql预装载的函数一样,如pi())。本文是为初学习MySQL存储过程的朋友写的,在本文中我们以在MySQL的CLI(command line interface)中建立一个存储过程的示例开始,然后通过在Java程序中调用我们创...
JDBC连接MySQL数据库的流程及其原理

JDBC连接MySQL数据库的流程及其原理

1、在开发环境中加载指定数据库的驱动程序。例如,使用的数据库是MySQL,所以需要去下载MySQL支持JDBC的驱动程序,,关键是这个JAR文件,mysql-connector-java-5.1.18-bin.jar;开发环境是MyEclipse使用eclipse也可以,将下载得到的驱动程序加载进开发环境中。2、在Java程序中加载驱动程序。在Java程序中,可以通过 “Class.forName(“指定数据库的驱动程序&rdquo...
如何在 Redis 实现 Lua 脚本事务?

如何在 Redis 实现 Lua 脚本事务?

在刚过去的几个月中,我一直在构思并尝试在 redis 中实现 lua 脚本的事务功能。没有多少人理解我的想法,所以我将通过一些历史为大家做下解释。MySQL 与 Postgres在 1998-2003 年间,如果你想运行一个正规的数据库驱动的网站/服务,但又没有足够的资金购买微软或 Oracle 的数据库,你可以选择 MySQL 或 Postgres 。很多人都选择了 MySQL,因为它速度较快——主要是因为 MyISAM 存储引擎...
MariaDB的GTID复制和多源复制

MariaDB的GTID复制和多源复制

什么是GTID?GTID就是全局事务ID(global transaction identifier ),最初由google实现,官方MySQL在5.6才加入该功能。GTID实际上是由UUID+TID组成的。其中UUID是一个MySQL实例的唯一标识。TID代表了该实例上已经提交的事务数量,并且随着事务提交单调递增。什么是多源复制?多源复制意味着一个服务器能从多个从服务器上复制。这是MariaDB 10.0的一个新特性。实验系统:CentOS 6.6_x8...
ORA-12154: TNS: 无法解析指定的连接标识符 解决

ORA-12154: TNS: 无法解析指定的连接标识符 解决

相信使用过Oracle数据库的人一定碰到过“ORA-12154: TNS: 无法解析指定的连接标识符”错误,我在此做一个小小的总结。在程序中连接Oracle数据库的方式与其他常用数据库,如:MySql,Sql Server不同,这些数据库可以通过直接指定IP的方式连接,但是Oracle则需要通过Oracle客户端配置网络服务名的方式来连接。否则就会出现“ORA-12154: TNS: 无法解析指定的连接标识符&rdquo...
<< 871 872 873 874 875 876 877 878 879 880 >>