数据库

【MySQL主从复制原理及搭建全过程】

目录 准备工作 主从复制原理 开始搭建主从复制 本文将使用mariaDB数据库实现主从复制,其步骤与MySQL数据库无差异. MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可. 开发这个分支的原因之一是:甲骨文公司收购了MySQL后,有将MySQL闭源的潜在风险,因此社区采用分支的方式来避免这个风险. MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的替代品. Red Hat Enterprise Linux/Ce

oracle利用触发器实现自增列

oracle没有自增列功能,mysql 和 sqlserver 分别用auto_increment和identity(1,1)来实现自增.oracle要实现只能通过序列实现,每次插入的时候通过取序列的值显示的给自增列,感觉有些不方便,这里使用触发器来代替,从而使插入的时候三者数据库在语法上一致,便于DAO代码的移植.下面是ORACLE实现示例,步骤如下:                                                                        

SQL 语句 (二) --- SELECT

1 完整句法: SELECT [ ALL | DISTINCT TOP n [] WITH TIES select_list [INTO [new_table_name] ] [FROM {table_name | view_name2} [ (optimizer_hints) ] [ [ , {table_name2 | view_name2} [ (optimizer_hints) ] [... ,            table_name16  | view_name16 ] [ (op

ubuntu中pgAdminIII无法连接postgreSQL

小笔记 修改了postgresql.conf文件和pg_hba.conf文件,再进行服务重启/etc/init.d/postgresql restart依然不能连接postgreSQL; 之后重新修改了密码[密码其实没有变],神奇的是竟然连接成功: postgres=# ALTER USER postgres WITH PASSWORD '×××';

Oracle学习之DATAGUARD(十) 在同台机器上使用11g rman新特性创建DG

首先使用dbca建立一个数据库,db_name=primary . 2.   为两个数据库准备静态监听.及连接彼此的TNSNAME 11gdg1-> cat listener.ora tnsnames.ora  # listener.ora Network Configuration File: /u01/app/oracle/product/11.2.0/db_1/network/admin/listener.ora # Generated by Oracle configuration to

ORACLE经常使用的命令

一个.ORACLE启动和关机 1.在独立环境中 要启用或禁用ORACLE该系统必须切换到ORACLE用户,例如以下 su-oracle a.启动ORACLE系统 oracle>svrmgrl SVRMGR>connectinternal SVRMGR>startup SVRMGR>quit b.关闭ORACLE系统 oracle>svrmgrl SVRMGR>connectinternal SVRMGR>shutdown SVRMGR>quit 启动orac

mysql 导入导出的几个常用参数

导出命令: mysqldump -t --skip-extended-insert -utest -p testdb tableA > testdb_tableA.sql 参数说明: -t: 仅导出数据,不包含Schema(建表.索引) --skip-extended-insert: 导出的insert语句一条数据一行,默认的选项是所有数据一条insert ----------------------------------- 导入命令: mysql -f -h127.0.0.1 -utest

Delphi ADOQuery无法更新定位行问题(其它数据库访问控件类似)

在Delphi中用ADOQuery进行数据库的记录操作时,有时会报 “无法为更新定位行.一些值可能已经在最后一次读取后已更改” 这个错. 这个错通常是 你操作的记录 在数据库中已经被修改过了, 如: 在数据库中已被删除了,你用ADOQuery更新了被删除的记录 数据库表字段有默认值,你用ADOQuery插入新记录后没有重新查询一遍就再次操作该记录 暂时知道的会引起该错误的可能有这两种,归纳起来 就是 ADOQuery的记录 与 数据库 表记录 对应不上 Delphi ADOQuery无法更新定位

ORACLE和MYSQL的简单区别

1,Oracle没有offet,limit,在mysql中我们用它们来控制显示的行数,最多的是分页了.oracle要分页的话,要换成rownum. 2,oracle建表时,没有auto_increment,所有要想让表的一个字段自增,要自己添加序列,插入时,把序列的值,插入进去. 3,oracle有一个dual表,当select后没有表时,加上的.不加会报错的.select 1 这个在mysql不会报错的,oracle下会.select 1 from dual这样的话,oracle就不会报错了.

SQL truncate 、delete与drop区别(转)

相同点: 1.truncate和不带where子句的delete.以及drop都会删除表内的数据. 2.drop.truncate都是DDL语句(数据定义语言),执行后会自动提交. 不同点: 1. truncate 和 delete 只删除数据不删除表的结构(定义) drop 语句将删除表的结构被依赖的约束(constrain).触发器(trigger).索引(index):依赖于该表的存储过程/函数将保留,但是变为 invalid 状态. 2. delete 语句是数据库操作语言(dml),这

MongoDB 3.X 用户权限控制

摘要: MongoDB 3.0 安全权限访问控制,在添加用户上面3.0版本和之前的版本有很大的区别,这里就说明下3.0的添加用户的方法. 环境.测试: 在安装MongoDB之后,先关闭auth认证,进入查看数据库,只有一个local库,admin库是不存在的: [email protected]:/usr/local/mongo4# mongo --port=27020 MongoDB shell version: 3.0.4 connecting to: 127.0.0.1:27020/tes

CentOS7 环境下MySQL5.7 PHP7的安装

用的都是最新版的包 : php7 mysql5.7 nginx1.8  zabbix3.2.6 替换源为阿里云的源 mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo yum clean all yum makecache

MySQL利用binlog恢复误操作数据

在人工手动进行一些数据库写操作的时候(比方说数据订正),尤其是一些不可控的批量更新或删除,通常都建议备份后操作.不过不怕万一,就怕一万,有备无患总是好的.在线上或者测试环境误操作导致数据被删除或者更新后,想要恢复,一般有两种方法. 方法一.利用最近的全量备份+增量binlog备份,恢复到误操作之前的状态,但是随着数据量的增大,binlog的增多,恢复起来很费时.方法二.如果binlog的格式为row,那么就可以将binlog解析出来生成反向的原始SQL 以下是利用方法二写的一个python脚本b

创建oracle数据库的表空间、用户、目录、导入\导出文件等信息

1.创建表空间 create tablespace ts_aw logging datafile 'd:\app\Administrator\product\tablespace\ts_aw.dbf' size 10M autoextend on next 5M maxsize 20480M; 2.创建用户 create user hb identified by hb default tablespace ts_aw; 3.给用户授权限 grant connect,resource,dba t

Struts2 连接数据库总结

了解MVC模式 MVC 是一种使用MVC                         Model View Controller模型-视图-控制器设计创建Web 应用程序的模式[1]  大一时的笔记:现在写成博客,有些知识点看到想笑哈哈,给刚学的看看吧!         Model 模型 表示应用程序核心 比如数据库记录列表 View 视图 显示数据 数据库记录 Controller 控制器 处理输入 写入数据库记录 MVC    模式同时提供了对HTMLCSS 和JavaScript 的完

Spring3 JDBC

Spring3 JDBC Spring JDBC抽象框架 定义数据库连接参数 打开数据库连接 声明SQL语句 预编译并执行SQL语句 遍历查询结果(如果需要的话) 处理每一次遍历操作 处理抛出的任何异常 处理事务 关闭数据库连接 配置数据源 数据库连接 数据库连接池 数据源 由JDBC驱动程序定义的数据源 基于连接池的JNDI数据源 基于连接池的本地数据源 DBCP数据库连接池 BasicDataSource initialSize :初始化连接数量,默认值为0 maxActive :最大连接数

使用ThinkPHP开发中MySQL性能优化的最佳21条经验

使用ThinkPHP开发中MySQL性能优化的最佳21条经验讲解,目前,数据库的操作越来越成为整个应用的性能瓶颈了,这点对于Web应用尤其明显.关于数据库的性能,这并不只是DBA才需要担心的事,而这更是我 们程序员需要去关注的事情.当我们去设计数据库表结构,对操作数据库时(尤其是查表时的SQL语句),我们都需要注意数据操作的性能.这里,我们不会讲过 多的SQL语句的优化,而只是针对MySQL这一Web应用最多的数据库.希望下面的这些优化技巧对你有用. 1. 为查询缓存优化你的查询大多数的MySQ

SQL SERVER中求上月、本月和下月的第一天和最后一天[转]

--上月的第一天 SELECT CONVERT(CHAR(10),DATEADD(month,-1,DATEADD(dd,-DAY(GETDATE())+1,GETDATE())),111) SELECT DATEADD(mm,DATEDIFF(mm,0,dateadd(month,-1,getdate())),0) --上月的最后一天 SELECT CONVERT(CHAR(10),DATEADD(ms,-3,DATEADD(mm, DATEDIFF(mm,0,getdate()),0)),1

常见Mysql系统参数调整

列出MySQL服务器运行各种状态值: mysql> show global status; 查询MySQL服务器配置信息: mysql> show variables; 1.  慢查询 mysql> show variables like '%slow%'; +---------------------+-------------------------------+ | Variable_name       | Value                         | +---

转:关于数据库压缩技术的Survey

原文来自于:http://outofmemory.cn/mysql/database-compression-tech 昨天给团队内的小伙伴做了一个关于数据库压缩技术的Survey,现将其中可以公开的部分分享出来.数据库压缩技术目前已经成为了各种数据库的标配技术,这里面包括三大商业数据库.各种专业的分新型数据库,也包括各种开源数据库和NoSQL数据库. 到了今天,数据库压缩技术的运用已经不单纯是为了节省存储成本,更多的时候,是为了提供更高的计算密度(比如容量受限的SSD),以及提供更高的查询性能