环境: oracle 版本:Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 操作系统:Red Hat Enterprise Li nux Server release 5.5 (Tikanga) 1、首先安装oracle数据库 软件 ,然后向虚拟机中添加三块2G的硬盘,重启虚拟机 2、 安装 软件包: 2.1
环境:
oracle版本:Oracle Database10g Enterprise Edition Release 10.2.0.1.0
操作系统:Red Hat Enterprise LinuxServer release 5.5 (Tikanga)
1、 首先安装oracle数据库软件,然后向虚拟机中添加三块2G的硬盘,重启虚拟机
2、 安装软件包:
2.1、查看好系统版本,本机是redhat 5,内核版本如下:
[root@server3 dev]# uname -a
Linux server32.6.18-194.el5#1 SMP Tue Mar 16 21:52:43 EDT 2010 i686 i686 i386 GNU/Linux
2.2、上oracle官方网站,搜索关键字oracle asm red hat 5。去下载如下asm的三个rpm软件包(本机器下载的是标红的三个软件包,安装包一定要下载正确的版本否则第五步会出错,导致后续配置无法进行):
http://www.oracle.com/technetwork/topics/linux/downloads/rhel5-084877.html
Intel IA32 (x86) Architecture
Library and Tools
· oracleasm-support-2.1.3-1.el5.i386.rpm
· oracleasmlib-2.0.4-1.el5.i386.rpm
Drivers for kernel 2.6.18-194.el5
· oracleasm-2.6.18-194.el5xen-2.0.5-1.el5.i686.rpm
· oracleasm-2.6.18-194.el5debug-2.0.5-1.el5.i686.rpm
· oracleasm-2.6.18-194.el5PAE-2.0.5-1.el5.i686.rpm
· oracleasm-2.6.18-194.el5-debuginfo-2.0.5-1.el5.i686.rpm
· oracleasm-2.6.18-194.el5-2.0.5-1.el5.i686.rpm
2.3、安装上述的三个rpm软件包:
[root@server3 asm]# rpm -ivh *.rpm
warning: oracleasm-2.6.18-194.11.3.el5-2.0.5-1.el5.i686.rpm: Header V3 DSA signature: NOKEY, key ID 1e5e0159
Preparing... ########################################### [100%]
1:oracleasm-support########################################### [ 33%]
2:oracleasm-2.6.18-194.el###################################### [ 67%]
3:oracleasmlib ########################################### [100%]
3、 对在1中添加进来的三个磁盘进行分区(我们添加了sdb、sdc和sdd。注意:这里是仅进行分区,而不需要进行格式化。
[root@server3 dev]# ls sd*
sda sda1 sda2 sdb sdc sdd
[root@server3 dev]# fdisk /dev/sdb
Command (m for help):n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4):1
First cylinder (1-261, default 1):1
Last cylinder or +size or +sizeM or +sizeK (1-261, default 261):261
Command (m for help):w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
同样执行如下的命令,来对sdc和sdd进行分区:
[root@server3 dev]# fdisk /dev/sdc
[root@server3 dev]# fdisk /dev/sdd
查看并确认分区的情况:
[root@server3 dev]# fdisk -l
Disk /dev/sda: 21.4 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sda1 * 1 13 104391 83 Linux
/dev/sda2 14 2610 20860402+ 8e Linux LVM
Disk /dev/sdb: 2147 MB, 2147483648 bytes
255 heads, 63 sectors/track, 261 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sdb1 1 261 2096451 83 Linux
Disk /dev/sdc: 2147 MB, 2147483648 bytes
255 heads, 63 sectors/track, 261 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sdc1 1 261 2096451 83 Linux
Disk /dev/sdd: 2147 MB, 2147483648 bytes
255 heads, 63 sectors/track, 261 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sdd1 1 261 2096451 83 Linux
4、 配置ASM:
[root@server3 asm]# /etc/init.d/oracleasm configure
Configuring the Oracle ASM library driver.
This will configure the on-boot properties of the Oracle ASM library
driver. The following questions will determine whether the driver is
loaded on boot and what permissions it will have. The current values
will be shown in brackets ('[]'). Hitting
answer will keep that current value. Ctrl-C will abort.
Default user to own the driver interface [ ]:oracle
Default group to own the driver interface [ ]:oinstall
Start Oracle ASM library driver on boot (y/n) [y]:
Scan for Oracle ASM disks on boot (y/n) [y]:
Writing Oracle ASM library driver configuration: done
Initializing the Oracle ASMLib driver: [ OK ]
Scanning the system for Oracle ASMLib disks: [ OK ]
5、 系统添加磁盘:
[root@server3 asm]# /etc/init.d/oracleasm createdisk VOL1 /dev/sdb1
Marking disk "VOL1" as an ASM disk: [ OK ]
[root@server3 asm]# /etc/init.d/oracleasm createdisk VOL2 /dev/sdc1
Marking disk "VOL2" as an ASM disk: [ OK ]
[root@server3 asm]# /etc/init.d/oracleasm createdisk VOL3 /dev/sdd1
Marking disk "VOL3" as an ASM disk: [ OK ]
6、 创建ASM初始化文件init+ASM.ora,在$ORACLE_HOME/dbs目录下(可以理解为是ASM实例的pfile文件):
[oracle@localhost db_1]$ cat>>/opt/ora10g/product/10.2.0/db_1/dbs/init+ASM.ora
> *.asm_diskstring='ORCL:VOL*'
> *.background_dump_dest='/opt/ora10g/admin/+ASM/bdump'
> *.core_dump_dest='/opt/ora10g/admin/+ASM/cdump'
> *.instance_type='asm'
> *.large_pool_size=24M
> *.remote_login_passwordfile='SHARED'
> *.user_dump_dest='/opt/ora10g/admin/+ASM/udump'
> EOF
注:/opt/ora10g/product/10.2.0/db_1/是本机器的$ORACLE_HOME路径。
7、创建结构目录
[oracle@server3 db_1]$ mkdir -p /opt/ora10g/admin/+ASM/udump
[oracle@server3 db_1]$ mkdir -p /opt/ora10g/admin/+ASM/bdump
[oracle@server3 db_1]$ mkdir -p /opt/ora10g/admin/+ASM/cdump
8、创建asm实例的密码文件:
[oracle@localhost dbs]$ orapwd file=orapw+ASM password=minnow
9、我们来测试一个asm实例能否启动:
[oracle@server3 ~]$ sqlplus
SQL*Plus: Release 10.2.0.1.0 - Production on Tue Aug 31 20:10:11 2010
Copyright (c) 1982, 2005, Oracle. All rights reserved.
Enter user-name:sys as sysdba
Enter password:
Connected to an idle instance.
SQL> startup
ORA-29701: unable to connect to Cluster Manager
10、下面来添加CSS,以解决9中出现的问题。
[oracle@localhost dbs]$ localconfig add
You must be logged in as root to run /opt/ora10g/product/10.2.0/db_1//bin/localconfig.
Log in as root and restart /opt/ora10g/product/10.2.0/db_1//bin/localconfig execution.
提示需要以root来执行命令:
[root@localhost ~]# /opt/ora10g/product/10.2.0/db_1//bin/localconfig add
/etc/oracle does not exist. Creating it now.
Successfully accumulated necessary OCR keys.
Creating OCR keys for user 'root', privgrp 'root'..
Operation successful.
Configuration for local CSS has been initialized
Adding to inittab
Startup will be queued to init within 90 seconds.
Checking the status of new Oracle init process...
Expecting the CRS daemons to be up within 600 seconds.
CSS is active on these nodes.
localhost
CSS is active on all nodes.
Oracle CSS service is installed and running under init(1M)
11、我们再启动以下ASM实例,由于我们没有创建磁盘组,所以提示没有mount diskgroup正常:
[root@server3 ~]# su - oracle
[oracle@server3 ~]$ echo $ORACLE_SID
+ASM
[oracle@server3 ~]$ sqlplus
SQL*Plus: Release 10.2.0.1.0 - Production on Tue Aug 31 20:16:46 2010
Copyright (c) 1982, 2005, Oracle. All rights reserved.
Enter user-name: sys as sysdba
Enter password:
Connected to an idle instance.
SQL> startup
ASM instance started
Total System Global Area 96468992 bytes
Fixed Size 1217908 bytes
Variable Size 70085260 bytes
ASM Cache 25165824 bytes
ORA-15110: no diskgroups mounted
12、下面,可以执行dbca,开始创建数据库了:
第一步的时候,选择新建数据:
第三步的时候,数据库实例的SID要和ASM中的asm_diskstring参数中的SID一致本例中是SID)
第六步时。指定存储项为ASM:
点击Next的时候,提示需要关闭asm实例:
第七步时,点击Create New创建新的Disk Group:
给新的磁盘组取名为DATA1,并把三块硬盘都加入到改组,冗余项选择normal:
经过上述操作后,一个磁盘组DATA1已经创建好,并且已经加载上:
指定数据文件创建的位置,默认创建在DATA1磁盘组下:
第九步,指定Flash Recovery Area的位置和大小,按照默认的即可:
第十步,选择安装样例数据库:
第十一步,字符集我们可以进行如下的选择:
第十二步,查看数据库存储相关信息:
第十三步,点击Finish来结束配置过程,进行数据库的创建
安装过程中的截图:
安装完成后的截图:
至此,单机上安装ASM已经完成。
我们现在可以登陆asm实例,查看下一些相关的视图:
[oracle@server3 ~]$ echo $ORACLE_SID
+ASM
[oracle@server3 ~]$ sqlplus
SQL*Plus: Release 10.2.0.1.0 - Production on Tue Aug 31 20:56:29 2010
Copyright (c) 1982, 2005, Oracle. All rights reserved.
Enter user-name: sys as sysdba
Enter password:
Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options
SQL> SELECT GROUP_NUMBER,INSTANCE_NAME,DB_NAME,STATUS
2 FROM v$asm_client;
GROUP_NUMBER INSTANCE_NAME DB_NAME STATUS
---------------------- -------------------------- --------------- ------------------
1 ORCL ORCL CONNECTED
查看ASM中的数据文件:
SQL> set linesize 500
SQL> SELECT FILE_NUMBER,BLOCKS,BLOCK_SIZE/1024 BLOCK_KB,BYTES/1024/1024 AS MB,SPACE/1024/1024 AS MB,TYPE FROM v$asm_file;
FILE_NUMBER BLOCKS BLOCK_KB MB MB TYPE
----------- ---------- ---------- ---------- ---------- ----------------------------------------------------------------
256 61441 8 480.007813 965 DATAFILE
257 30721 8 240.007813 485 DATAFILE
258 4481 8 35.0078125 75 DATAFILE
259 641 8 5.0078125 12 DATAFILE
260 431 16 6.734375 24 CONTROLFILE
261 431 16 6.734375 24 CONTROLFILE
262 102401 .5 50.0004883 115 ONLINELOG
263 102401 .5 50.0004883 115 ONLINELOG
264 102401 .5 50.0004883 115 ONLINELOG
265 102401 .5 50.0004883 115 ONLINELOG
266 102401 .5 50.0004883 115 ONLINELOG
FILE_NUMBER BLOCKS BLOCK_KB MB MB TYPE
----------- ---------- ---------- ---------- ---------- ----------------------------------------------------------------
267 102401 .5 50.0004883 115 ONLINELOG
268 2561 8 20.0078125 42 TEMPFILE
269 12801 8 100.007813 205 DATAFILE
270 5 .5 .002441406 2 PARAMETERFILE
登陆ORCL实例
[oracle@server3 ~]$ export ORACLE_SID=ORCL
[oracle@server3 ~]$ sqlplus
SQL*Plus: Release 10.2.0.1.0 - Production on Tue Aug 31 20:53:52 2010
Copyright (c) 1982, 2005, Oracle. All rights reserved.
Enter user-name: sys as sysdba
Enter password:
Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options
SQL> select instance_name from v$instance;
INSTANCE_NAME
----------------
ORCL
查看表空间及其所对应的文件名。发现具体的路径不详,由ASM自动给我们的文件命名进行管理:
SQL> select FILE_NAME ,TABLESPACE_NAME from dba_data_files;
FILE_NAME TABLESPACE_NAME
-------------------------------------------------- --------------------------------------------------
+DATA1/orcl/datafile/users.259.728512919 USERS
+DATA1/orcl/datafile/sysaux.257.728512919 SYSAUX
+DATA1/orcl/datafile/undotbs1.258.728512919 UNDOTBS1
+DATA1/orcl/datafile/system.256.728512919 SYSTEM
+DATA1/orcl/datafile/example.269.728513077 EXAMPLE
用命令行添加新硬盘:
1、以root命令来运行oracleasm命令
[root@server3 dev]# /etc/init.d/oracleasm createdisk VOL4 /dev/sde1
Marking disk "VOL4" as an ASM disk: [ OK ]
2、登陆至ASM实例中,输入如下命令,需要有add failgroup子句:
SQL> alter diskgroup DATA1add failgroupVOL4 disk 'ORCL:VOL4';
可以看到,添加好了VOL4之后,会进行“重平衡”,每个磁盘的使用容量是相同的:
SQL> SELECT GROUP_NUMBER,DISK_NUMBER,NAME,TOTAL_MB,FREE_MB
2 FROM v$asm_disk;
GROUP_NUMBER DISK_NUMBER NAME TOTAL_MB FREE_MB
---------------------- ------------------- --------- ---------------- ----------
1 0 VOL1 2047 1377
1 1 VOL2 2047 1376
1 2 VOL3 2047 1376
1 3 VOL4 2047 1377
Asm工具初体验
[oracle@server3 ~]$ asmcmd
ASMCMD>
ASMCMD> ls -l +DATA1/ORCL/DATAFILE
Type Redund Striped Time Sys Name
DATAFILE MIRROR COARSE SEP 01 13:00:00 Y EXAMPLE.269.728513077
DATAFILE MIRROR COARSE SEP 01 14:00:00 Y SYSAUX.257.728512919
DATAFILE MIRROR COARSE SEP 01 13:00:00 Y SYSTEM.256.728512919
DATAFILE MIRROR COARSE SEP 01 13:00:00 Y UNDOTBS1.258.728512919
DATAFILE MIRROR COARSE SEP 01 13:00:00 Y USERS.259.728512919
ASMCMD> help
asmcmd [-p] [command]
The environment variables ORACLE_HOME and ORACLE_SID determine the
instance to which the program connects, and ASMCMD establishes a
bequeath connection to it, in the same manner as a SQLPLUS / AS
SYSDBA. The user must be a member of the SYSDBA group.
Specifying the -p option allows the current directory to be displayed
in the command prompt, like so:
ASMCMD [+DATAFILE/ORCL/CONTROLFILE] >
[command] specifies one of the following commands, along with its
parameters.
Type "help [command]" to get help on a specific ASMCMD command.
commands:
--------
cd
du
find
help
ls
lsct
lsdg
mkalias
mkdir
pwd
rm
rmalias
ASMCMD>

INNODBは、レドログと非論的なものを使用して、データの一貫性と信頼性を確保しています。 1.レドログは、クラッシュの回復とトランザクションの持続性を確保するために、データページの変更を記録します。 2.Undologsは、元のデータ値を記録し、トランザクションロールバックとMVCCをサポートします。

説明コマンドのキーメトリックには、タイプ、キー、行、および追加が含まれます。 1)タイプは、クエリのアクセスタイプを反映しています。値が高いほど、constなどの効率が高くなります。 2)キーは使用されているインデックスを表示し、nullはインデックスがないことを示します。 3)行はスキャンされた行の数を推定し、クエリのパフォーマンスに影響します。 4)追加の情報を最適化する必要があるというFilesortプロンプトを使用するなど、追加情報を提供します。

Temporaryを使用すると、MySQLクエリに一時テーブルを作成する必要があることが示されています。これは、異なる列、またはインデックスされていない列を使用して順番に一般的に見られます。インデックスの発生を回避し、クエリを書き直し、クエリのパフォーマンスを改善できます。具体的には、expliect出力に使用を使用する場合、MySQLがクエリを処理するために一時テーブルを作成する必要があることを意味します。これは通常、次の場合に発生します。1)個別またはグループビーを使用する場合の重複排除またはグループ化。 2)Orderbyに非インデックス列が含まれているときに並べ替えます。 3)複雑なサブクエリを使用するか、操作に参加します。最適化方法には以下が含まれます。1)OrderbyとGroupB

MySQL/INNODBは、4つのトランザクション分離レベルをサポートしています。 1.ReadunCommittedは、知らないデータを読み取ることができます。 2。読み込みは汚い読み取りを回避しますが、繰り返しのない読みが発生する可能性があります。 3. RepeatablerEadはデフォルトレベルであり、汚い読み取りと非回復不可能な読みを避けますが、幻の読み取りが発生する可能性があります。 4. Serializableはすべての並行性の問題を回避しますが、同時性を低下させます。適切な分離レベルを選択するには、データの一貫性とパフォーマンス要件のバランスをとる必要があります。

MySQLは、Webアプリケーションやコンテンツ管理システムに適しており、オープンソース、高性能、使いやすさに人気があります。 1)PostgreSQLと比較して、MySQLは簡単なクエリと高い同時読み取り操作でパフォーマンスが向上します。 2)Oracleと比較して、MySQLは、オープンソースと低コストのため、中小企業の間でより一般的です。 3)Microsoft SQL Serverと比較して、MySQLはクロスプラットフォームアプリケーションにより適しています。 4)MongoDBとは異なり、MySQLは構造化されたデータおよびトランザクション処理により適しています。

MySQLインデックスのカーディナリティは、クエリパフォーマンスに大きな影響を及ぼします。1。高いカーディナリティインデックスは、データ範囲をより効果的に狭め、クエリ効率を向上させることができます。 2。低カーディナリティインデックスは、完全なテーブルスキャンにつながり、クエリのパフォーマンスを削減する可能性があります。 3。ジョイントインデックスでは、クエリを最適化するために、高いカーディナリティシーケンスを前に配置する必要があります。

MySQL学習パスには、基本的な知識、コアの概念、使用例、最適化手法が含まれます。 1)テーブル、行、列、SQLクエリなどの基本概念を理解します。 2)MySQLの定義、作業原則、および利点を学びます。 3)インデックスやストアドプロシージャなどの基本的なCRUD操作と高度な使用法をマスターします。 4)インデックスの合理的な使用や最適化クエリなど、一般的なエラーのデバッグとパフォーマンス最適化の提案に精通しています。これらの手順を通じて、MySQLの使用と最適化を完全に把握できます。

MySQLの実際のアプリケーションには、基本的なデータベース設計と複雑なクエリの最適化が含まれます。 1)基本的な使用法:ユーザー情報の挿入、クエリ、更新、削除など、ユーザーデータの保存と管理に使用されます。 2)高度な使用法:eコマースプラットフォームの注文や在庫管理など、複雑なビジネスロジックを処理します。 3)パフォーマンスの最適化:インデックス、パーティションテーブル、クエリキャッシュを使用して合理的にパフォーマンスを向上させます。


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

SublimeText3 中国語版
中国語版、とても使いやすい

SAP NetWeaver Server Adapter for Eclipse
Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。

Dreamweaver Mac版
ビジュアル Web 開発ツール

Safe Exam Browser
Safe Exam Browser は、オンライン試験を安全に受験するための安全なブラウザ環境です。このソフトウェアは、あらゆるコンピュータを安全なワークステーションに変えます。あらゆるユーティリティへのアクセスを制御し、学生が無許可のリソースを使用するのを防ぎます。

MinGW - Minimalist GNU for Windows
このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。
