Oracle 橫表、縱表一點記錄

橫表就是普通的建表方式,如一個表結構為: 主鍵、欄位1、欄位2、欄位3。。。 如果變成縱表後,則表結構為: 主鍵、欄位代碼、欄位值。 而欄位代碼則為欄位1、欄位2、欄位3。 縱表對從資料庫到記憶體的映射效率是有影響的,但細一點說也要一分為二: 縱表的初始映射要慢一些;

遠程備份MySQL資料庫指令碼

最近有幾台線上資料庫,硬碟比較吃緊,但是又不方便擴容和轉移到其它機器。但是資料又比較重要,需要經常備份出來。最早的做法是,在本地備份出完整的庫,把備份庫和binlog一併推到遠端某台備份主機上。但是因為最近空間吃緊,而備份庫需要佔用不小的空間。有沒有其它的解決辦法呢?查看了mysqldump具備遠程備份的功能,可以直接將遠端資料備份到本地來,這樣就可以大大的節省了遠端資料庫的磁碟空間。所以我嘗試寫了一個備份指令碼,再配合crontab定時執行,目前看來效果還不錯。線上環境稍加修改可直接使用,如有

MySQL 5.6同步複製新特性詳解

繼5.5半同步複製後,MySQL 5.6又對其進行了最佳化與改進,其中有兩個地方較為重要:1、對營運人員來說應該是一件大喜的事情,在主從切換後,在傳統的方式裡,你需要找到binlog和POS點,然後change master

恢複RMAN-06004 RMAN-20242報錯誤

恢複報如下錯誤,原因是備份使用的定義和恢複使用的不同,修改備份定義OB2BARLIST為正確的帶庫標識解決。錯誤的:allocate channel 'dev_4' type 'sbt_tape'  parms 'ENV=(OB2BARTYPE=Oracle8,OB2APPNAME=syprd,OB2BARLIST=backup_full)';正確的為:allocate channel 'dev_0' type 'sbt_tape' parms

使用Oracle的instr函數與索引配合提高模糊查詢的效率

一般來說,在Oracle資料庫中,我們對tb表的name欄位進行模糊查詢會採用下面兩種方式:1.select * from tb where name like '%XX%';2.select * from tb where instr(name,'XX')>0;若是在name欄位上沒有加索引,兩者效率差不多,基本沒有區別。為提高效率,我們在name欄位上可以加上非唯一性索引:create index idx_tb_name on tb(name);這樣,再使用 select *

Oracle通過JOB定時建立序列

因為業務需要每月需要增加一個序列,想到了使用job定時建立,每次建立一年的。寫此job的過程中遇到一些問題,在此記錄一下。第一步:寫建立序列(sequence)的預存程序。代碼如下:create or replace procedure pro_create_seq(sequencePrefix in varchar2)   is  strYear varchar2(4);&n

DB2建立資料庫樣本

1    建立串連使用者mkuser id=1028 pgrp=db2user1 groups=db2user1 home=/home/fmusx core=-1 data=491519 stack=32767 rss=-1 fsize=-1 fmusx2    建立開發資料庫db2 create database SX3    AUTOMATIC STORAGE YES ON

Ubuntu 12.04 Server 上安裝 MongoDB

MongoDB (from “humongous”)是一款開源的面向文檔的NoSQL 資料庫,使用C++開發,儲存格式為BSON,模式自由,高效能、易部署、易使用,儲存資料非常方便。目前已經有大量開發人員在生產環境中使用。MongoDB官網:http://www.mongodb.org/如何在 Ubuntu 12.04 (Precise) Server 上安裝 MongoDBsudo apt-key adv –keyserver keyserver.ubuntu.com –recv

PHP中MySQL串連管理

對於PHP程式來來說,MySQL是一種稀缺的資源。MySQL預設最大串連數為100,也即是最多接受100個MySQL的用戶端串連。因此,PHP在使用MySQL串連時做了一些最佳化的處理。這些最佳化,可能對效能有所提升,但對使用MySQL串連的使用卻也造成一些困惑。建立MySQL串連:resource mysql_connect ( [string server [, string username [, string password [, bool new_link [, int

MySQL索引之隔離列

如果在查詢中沒有隔離索引的列,mysql通常不會使用索引。“隔離“列意味著它不是運算式的一部分,也沒有位於函數中。例如:mysql>select id from test where id +1 =5;我們能輕易地看出where子句中的id等4,但是mysql卻不會幫你求解方程,這取決於自己。我們應該養成簡化where子句的習慣,這樣就會把被索引的列單獨放在比較子的一邊。再例如:mysql>select ... where TO_DAYS(CURRENT_DATE) -

MySQL預存程序實現行轉列

把表t_rows中的資料轉換為列顯示 CREATE TABLE `t_rows` (   `dt_str` varchar(20) NOT NULL,   `name` varchar(20) NOT NULL,   `age` int(11) NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8; 表t_rows行顯示的結果為 mysql> SELECT `dt_str`, `name`, `age` FROM

MySQL 執行計畫解讀

1. explain extended select .....  將執行計畫反編譯成SELECT 語句,運行 show warnings 可得到被MYSQL最佳化器最佳化後的查詢語句。2. explain partitions select ....用於分區表的EXPLAIN3.執行計畫包含的資訊id      select_type     table   

Oracle控制檔案備份恢複 resetlogs方式

alter databasebackup controfile to trace as '/bk/col.sql';一致性停庫破壞記錄檔和控制檔案啟動資料庫SQL> startupOracle instancestarted. Total SystemGlobal Area  314572800 bytesFixed Size            &

在一台伺服器安裝多個MySQL資料庫

一台服務上已經安裝了mysql執行個體,可通過mysqld_multi命令新增執行個體1.假設該伺服器上有一原有mysql執行個體,其basedir為/usr/local/mysql, 其資料目錄為/usr/local/mysql/data,設定檔為/etc/my.cnf# mkdir /opt/mysql3308# cp –rfp /usr/local/data/mysql /opt/mysql3308/#

Oracle效能問題診斷一例

今天一開啟資料庫,我還什麼事情都沒做,就發現硬碟燈狂轉。這是為啥?初步判定是Oracle的計劃任務在運行,但是哪個在運行,還不知道。所以,第一步先判斷後台在跑什麼東西:select * from v$session_longops where sofar <> totalwork

Oracle alter table執行個體

-- 此時,需要為表中添加若干個約束,添加約束的文法如下:     -- alter table 表名稱 add constraint 約束名稱 約束類型(限制欄位)     -- 刪除約束:     -- alter table book drop constraint book_pid_fk;       -- pk

MySQL資料庫讀寫分離

Mysql資料庫讀寫分離一、    Mysql資料庫安裝(此處略過)二、    Mysql主從複製,主伺服器為A:192.168.5.31,從伺服器為B:192.168.5.321、    主伺服器A上操作登陸mysqlMysql –u root –p 授權從伺服器B同步資料使用者mysql> GRANT REPLICATION SLAVE ON *.* to 'slavedb'@'192.168.5

MySQL 營運筆記(一)—— 終止高負載SQL

資料庫表體積大了,負載高了,難免一個sql出去耗時延長。半個月前,一個淩晨定時任務跑了8小時,突然手足無措。最後找DBA協助,直接幹掉了這個sql進程。其實,這並不複雜。首先,找出佔用CPU時間過長的SQLshow processlist;  假定最後一條sql處於Query狀態,且Time時間過長,就鎖定它的ID,直接幹掉即可。然後,殺死進程:kill QUERY  4487855;  這就大功告成了!參考KILL [CONNECTION | QUERY]

MySQL資料雙向同步的實現

如果想做MySQL資料單向同步的話,可以看另一篇文章: 一.準備環境  Master:  Ip:192.168.211.128  Mysql版本:5.0.77(可以通過命令mysqladmin -uroot -p123 version查看) Slave:  Ip:192.168.211.131      Mysql版本:5.0.77二.設定同步 設定master同步  1.

Oracle中V$session及session相關資訊

V$session參數SADDR: session addressSID: session identifier,常用於串連其它列。SERIAL#: sid 會重用,但是同一個sid被重用時,serial#會增加,不會重複。AUDSID: audit session id。可以通過audsid查詢當前session的sid。select sid from v$session where audsid=userenv('sessionid');PADDR: process address,關聯v$

總頁數: 978 1 .... 955 956 957 958 959 .... 978 Go to: 前往

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.