groupadd -g 54321 oinstall
groupadd -g 54322 dba
groupadd -g 54323 oper
useradd -u 54321 -g oinstall -G dba,oper oracle
vi /etc/oraInst.loc
以下以oracle用户 *** 作:
mkdir /u01/app
unzip linuxx64_12201_database.zip
cd database/
cp response/db_install.rsp inst.rsp
./runInstaller -showProgress -ignoreSysPrereqs -waitforcompletion -silent -responseFile /home/oracle/database/inst.rsp
inst.rsp文件中编辑如下
export ORACLE_HOME=/u01/app/oracle/product/12.2.0.1/dbhome_1
export ORACLE_SID=ORA12CR2
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib
export PATH=$ORACLE_HOME/bin:$PATH
文件$ORACLE_HOME/dbs/initORA12CR2.ora内容如下
CDB数据文庆搜件地址:$ORACLE_BASE/oradata/<SID>/
PDB数据文件地址:$ORACLE_BASE/oradata/<SID>/<pdb>/
sqlplus / as sysdba
startup nomount
CREATE DATABASE ORA12CR2
MAXLOGFILES 16
MAXLOGMEMBERS 4
MAXDATAFILES 1024
MAXINSTANCES 1
MAXLOGHISTORY 680
CHARACTER SET AL32UTF8
DATAFILE '/u01/app/oracle/oradata/ORA12CR2/system01.dbf' SIZE 500M REUSE EXTENT MANAGEMENT LOCAL
SYSAUX DATAFILE '/u01/app/oracle/oradata/ORA12CR2/sysaux01.dbf' SIZE 500M
UNDO TABLESPACE UNDOTBS1 DATAFILE '/u01/app/oracle/迟晌oradata/ORA12CR2/undotbs01.dbf' SIZE 500M
DEFAULT TEMPORARY TABLESPACE TEMP TEMPFILE '/u01/app/oracle/oradata/ORA12CR2/temp01.dbf' SIZE 500M
DEFAULT TABLESPACE USERS DATAFILE '/u01/app/oracle/oradata/ORA12CR2/users01.dbf' SIZE 200M
LOGFILE GROUP 1 ('/u01/app/oracle/oradata/ORA12CR2/redo01a.dbf', '/u01/app/oracle/oradata/ORA12CR2/redo01b.dbf') SIZE 50M,
GROUP 2 ('/u01/app/oracle/oradata/ORA12CR2/redo02a.dbf', '/u01/app/oracle/oradata/ORA12CR2/redo02b.dbf') SIZE 50M,
GROUP 3 ('/u01/app/oracle/oradata/ORA12CR2/redo03a.dbf', '/u01/app/oracle/oradata/ORA12CR2/redo03b.dbf') SIZE 50M
USER sys IDENTIFIED BY oracle
USER system IDENTIFIED BY oracle
SQL>spool create_dd.lis
SQL>@?/rdbms/admin/誉旦历catalog.sql
SQL>@?/rdbms/admin/catproc.sql
SQL>connect system/oracle
SQL>@?/sqlplus/admin/pupbld
listener.ora文件:
cd $ORACLE_HOME/dbs
以下必须输入强密码:
orapwd file=orapw<ORACLE_SID>password=<sys password>
否则就得加上format=12
orapwd file=orapw<ORACLE_SID>password=<sys password>format=12
(1) 参数个数少于7个:f (a, b, c, d, e, f)
a->%rdi, b->%rsi, c->%rdx, d->%rcx, e->%r8, f->拍岁巧%r9
g (a, b)
a->%rdi, b->%rsi
有趣的是, 实际上将参数放入寄存器的语句是从右到左处理参数表的, 这点与32位的时候一致.
CODE
2) 参数个数大于 7 个的时候
H(a, b, c, d, e, f, g)
a->%rdi, b->%rsi, c->%rdx, d->%rcx, e->%rax
g->8(%esp)
f->(%esp)
call H
易失寄存器:
%rax, %rcx, %rdx, %rsi, %rdi, %r8, %r9 为易失寄存器, 被调用者不必恢复它们的值。
显然,这里出现雀余的寄存器大多用于参数传递了, 值被改掉也无妨。而 %rax, %rdx 常用于
数值计算, %rcx 常用于循环计数,它们的值是经常改变的。其它的寄存器为非易失的,也
就是 rbp, rbx, rsp, r10~r15 的值如果在汇编模块中被改变了,在退出该模块时,必须将
其恢复。
教训:
用汇编写模块, 然袭键后与 c 整合, 一定要搞清楚编译器的行为, 特别是参数传递的方式. 此外, 我现在比较担心的一点是, 将来如果要把程序移植 到 WIN/VC 环境怎么办? 以前我用cygwin的gcc来处理汇编模块, 用vc来处理c模块, 只需要很少改动. 现在的问题是, 如果VC用 不同的参数传递方式, 那我不就麻烦了?
使用adams软件。解决方案如下:1、首先到adams软件找到一个名为mdi.bat的文件,该文件返尘的位置为“D盘”,然后双击该文件,使用管理员身份运行,然后会d出一个cmd窗口。
2、其次用键盘输入你想要昌知使用的模块,比如要使用载荷rsp文件用adams打开。
3、最漏迅禅后接下来输入rsp,然后选择使用交互方式即可。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)