首页 > 代码库 > 蓝的成长记——追逐DBA(7):基础命令,地基之石

蓝的成长记——追逐DBA(7):基础命令,地基之石

***********************************************声明*********************************************************************** 

原创作品,出自 “深蓝的blog” 博客,欢迎转载,转载时请务必注明出处,否则追究版权法律责任。

深蓝的blog:http://blog.csdn.net/huangyanlong/article/details/39738501

****************************************************************************************************************************

蓝的成长记——追逐DBA(7):基础命令,地基之石

**************************************************简介********************************************************************

        个人在oracle路上的成长记录,其中以蓝自喻,分享成长中的情感、眼界与技术的变化与成长。敏感信息均以英文形式代替,不会泄露任何企业机密,纯为技术分享。

        创作灵感源于对自己的自省和记录。若能对刚刚起步的库友起到些许的帮助或共鸣,欣慰不已。

        欢迎拍砖,如有关技术细节表述有错误之处,请您留言或邮件(hyldba@163.com)指明,不胜感激。

***************************************************************************************************************************

基础应该夯实,别让小细节影响专业性。

                                                                             ——深蓝 

**************************************************前言********************************************************************

这是一部个人记录的成长杂记,既然步入到oracle的这片蓝海,免不了一路的奔波与不断的考验。借由此杂记与库友们分享蓝的成长历程。

不知何时起对蓝有了一种说不出来的痴迷,痴迷其广博,痴迷其深邃,痴迷于近在咫尺却又遥不可及。

而又说不清从何时起,注视于oracle的红色耀眼,照亮出眼前的一道光,未知与迷惑在自己的脚下开始初露些许人生的充实与青春的回馈。

在追逐于DBA梦想的道路上步步前行。

***************************************************************************************************************************

        近日来,蓝在处理问题时,往往跟着思路一路排错的时候,总感到突然忘记了应该秒打的操作指令,然后查阅相关文档,感觉非常影响效率。今天就做一个简单的总结,不知道朋友们对下面的命令闪打闪用了没有,哈哈。

常用基础指令版本:V20141002】

系列一、LINUX命令

查看系统发行版?

[root@hylhost ~]# cat /etc/issue | grep LinuxRed Hat Enterprise Linux Server release 5.5 (Tikanga) 

查看系统内核信息?

[root@hylhost ~]# uname -aLinux hylhost.domain.com 2.6.18-194.el5 #1 SMP Tue Mar 16 21:52:43 EDT 2010 i686 i686 i386 GNU/Linux 

查看系统内核参数信息?

# cat /etc/sysctl.conf

补充:修改内核参数后使用sysctl –p命令使内核参数生效

通常情况下,如何修改oracle的环境变量?

# su - oracle$ vi .bash_profile 

查看机器型号?

[root@hylhost ~]# dmidecode | grep "Product Name"        Product Name: VirtualBox        Product Name: VirtualBox--次处命令使用在虚拟机环境下显示出如上信息 

查看网卡信息?

[root@hylhost ~]# dmesg | grep -i ethe1000: eth0: e1000_probe: Intel(R) PRO/1000 Network ConnectionADDRCONF(NETDEV_UP): eth0: link is not readye1000: eth0 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: RXADDRCONF(NETDEV_CHANGE): eth0: link becomes readyeth0: no IPv6 routers presente1000: eth0 NIC Link is Downe1000: eth0 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: RX 

查看内存信息?

[root@hylhost ~]# cat /proc/meminfoMemTotal:      2075468 kBMemFree:        935756 kBBuffers:        103892 kBCached:         877804 kBSwapCached:          0 kBActive:         340736 kBInactive:       735020 kBHighTotal:     1179584 kBHighFree:       198880 kBLowTotal:       895884 kBLowFree:        736876 kBSwapTotal:     4192956 kBSwapFree:      4192956 kBDirty:               8 kBWriteback:           0 kBAnonPages:       94088 kBMapped:          38204 kBSlab:            52624 kBPageTables:       3664 kBNFS_Unstable:        0 kBBounce:              0 kBCommitLimit:   5230688 kBCommitted_AS:   361940 kBVmallocTotal:   114680 kBVmallocUsed:      4716 kBVmallocChunk:   109848 kBHugePages_Total:     0HugePages_Free:      0HugePages_Rsvd:      0Hugepagesize:     4096 kB 

查看硬盘分区?

[root@hylhost ~]# df -hFilesystem            Size  Used Avail Use% Mounted on/dev/sda3              25G  3.5G   21G  15% //dev/sda1             487M   16M  446M   4% /boottmpfs                1014M     0 1014M   0% /dev/shm 

查看硬盘型号?

[root@hylhost ~]# cat /proc/scsi/scsiAttached devices:Host: scsi0 Channel: 00 Id: 00 Lun: 00  Vendor: ATA      Model: VBOX HARDDISK    Rev: 1.0   Type:   Direct-Access                    ANSI SCSI revision: 05
如何修改IP、主机名?
1. 地址解析文件# vi /etc/hosts2. 网卡配置文件# vi /etc/sysconfig/network-scripts/ifcfg-eth0其中内容点为:网卡设备名:DEVICE=eth0是否为静态:BOOTPROTO=staticIP地址:IPADDR=192.168.56.103子网掩码:NETMASK=255.255.255.0硬件MAC地址:HWADDR=08:00:27:29:DB:B2是否启动:ONBOOT=yes3. 网络配置文件:# vi /etc/sysconfig/network其中内容点为:网络配置:NETWORKING=yes关闭ipv6设置:NETWORKING_IPV6=no主机名:HOSTNAME=hyl 

如何创建组、创建用户?

# groupadd oinstall# groupadd dba# useradd -g oinstall -G dba oracle

如何修改用户密码?

# passwd oracle 

如何查看用户的uidgid

# id oracle 

如何创建oracle用户目录?

# mkdir -p /u01/app/oracle 

如何修改目录的所属关系?

# chown -R oracle:oinstall /home/u01/app 

如何改变目录的权限?

# chmod -R 775 /home/u01/app 

如何添加swap分区?

生成一个空文件:# dd if=/dev/zero of=/u01/swpf1 bs=1024k count=2048创建一个swap文件:# mkswap -c /u01/swpf1生成一个swap文件:# swapon /u01/swpf1修改开机自启动:# vi /etc/fstab添加/u01/swpf1     swap     swap    defaults    0 0 

如何解压各种常见的包?

(例1)、解压.cpio.gz格式包# zcat 10201_database_linux_x86_64.cpio.gz | cpio -idmv > /dev/null 2>&1(例2)、解压.cpio格式包# cpio -idmv < 10201_database_linux_x86_64.cpio(例3)、解压.zip# unzip p8202632_10205_Linux-x86-64.zip 

删除?

删除目录: rm -rf <目录名> 

挂载?

1. 挂载光盘的方法:[root@hyl soft]# df -hFilesystem            Size  Used Avail Use% Mounted on/dev/sr0              4.2G  4.2G     0 100% /media/CentOS_6.2_Final[root@hyl soft]# mount /dev/sr0 /cdmount: block device /dev/sr0 is write-protected, mounting read-only2. 挂载镜像文件的方法:[root@hyl soft]# lsWASND70_LINX64_Disk1.iso  WASND70_LINX64_Disk2.iso [root@hyl soft]# mount -o loop /soft/WASND70_LINX64_Disk1.iso /cd1[root@hyl soft]# mount -o loop /soft/WASND70_LINX64_Disk2.iso /cd2 

yum

1. 配置yum# cd /etc/yum.repos.d/到此路径下修改yum.repo,注意几处细节:baseurl=file:///cdrom1        //修改成挂载路径gpgcheck=0                 //关闭校验enabled=1                                      //启动详细请参考:<a target=_blank href=http://www.mamicode.com/"http://blog.csdn.net/huangyanlong/article/details/386149712">http://blog.csdn.net/huangyanlong/article/details/38614971>

top关注可以得到哪些信息?

第一部分:1. top:当前时间 | 系统运行时长 | 终端数 | 系统负载(1分钟前、5分钟前、15分钟前)2. tasks:系统进程总数 | 当前运行进程数 | 等待状态进程数 | 停止进程数 | 被复原进程数3. cpu:cpu使用率4. mem:内存总量 | 使用量 | 空闲内存量 | 缓冲使用中内存量5. swap:wasp分区使用情况第二部分:可以使用交互命令控制第三部分:内部进程使用情况列表 

rpm

1. 安装包#rpm  -ivh  <rpm包名>2. 查询是否已经安装的包[root@hyl bin]# rpm -qa |grep numactlnumactl-devel-2.0.3-9.el6.x86_64numactl-2.0.3-9.el6.x86_643. 卸载已经安装的包[root@hyl ~]# rpm -e numactl-devel-2.0.3-9.el6.x86_64[root@hyl ~]# rpm -e numactl-2.0.3-9.el6.x86_64
 如何将结果输出到日志文件中?
例如将安装包信息写入到rpm.log文件中,命令为:rpm -ivh binutils-2.17.50.0.6-14.el5.x86_64.rpm >> rpm.log 2>&1 

系列二、SQL指令

执行SQL脚本方法?

SQL>@/soft/mkuser.sql 

查看数据库里有哪些用户?

SQL> select username,account_status from dba_users;USERNAME        ACCOUNT_STATUS--------------- -------------------------OUTLN           OPENSYS             OPENSYSTEM          OPENROSE            OPENSCOTT           OPENops$oracle      OPENTOM             OPENDBSNMP          EXPIRED & LOCKEDTSMSYS          EXPIRED & LOCKEDDIP             EXPIRED & LOCKED 

如何对用户进行简单的授权及回收权限

SQL> grant connect,resource to scott;SQL> grant select any table to scott with admin option;      --用户不仅被授权,而且可以把权限授予给其他人SQL> grant INSERT, UPDATE, DELETE on scott.tcustord to ogg;  --举例:授予插入、更新、删除权限SQL> grant all on directory dir to public;                   --目录权限(给所有人权限)SQL> revoke select any table from scott;               --回收权限时不能级联SQL> revoke INSERT, UPDATE, DELETE any table from ogg; --举例 

如何让其它用户访问dba视图?

访问dba视图限制SQL> show parameter o7SQL> alter system set O7_DICTIONARY_ACCESSIBILITY=true scope=spfile; --改变true使其它用户可以访问dba视图 

表空间?

SQL> create tablespace metro1 datafile '/u01/app/oradata/metroscore.dbf' size 1000mb;--创建表空间SQL>alter tablespace COMMON_PICTURE2012 drop DATAFILE '/oracle/oradata/hyl3209/COMMON_PICTURE2012_02.dbf';--删除数据文件SQL> alter tablespace COMMON_PICTURE2012 add DATAFILE '/oracle/oradata/hyl3209/COMMON_PICTURE2012_02.dbf' SIZE 3000M REUSE AUTOEXTEND ON NEXT 1000M MAXSIZE UNLIMITED;--为表空间扩容并开启自动扩展功能SQL> select tablespace_name,contents,status from dba_tablespaces;--查看表空间状态SQL> select name,bytes/1024/1024 M from v$datafile; --查看表空间大小、数据文件大小SQL> select tablespace_name,sum(bytes)/1024/1024 mb from dba_free_space group by tablespace_name;--查看表空间剩余空间SQL> select file_name,autoextensible,increment_by from dba_data_files;--查看表空间是否自动扩展SQL> drop tablespace hyltablespace including contents and datafiles cascade constraints;--删除表空间SQL> drop user hyl cascade;--删除用户
临时表空间查询相关?
--dba_temp_files视图、v_$tempfile视图SQL> select file_id,file_name,tablespace_name from dba_temp_files;  --查看临时表空间对应的文件及文件号SQL> select tablespace_name,file_name,bytes/1024/1024 file_size,autoextensible from dba_temp_files;SQL> select status,enabled, name, bytes/1024/1024 file_size from v_$tempfile;SQL> alter database tempfile '/u01/app/oracle/oradata/EMREP/temp01.dbf' drop;--删除临时表空间SQL> create temporary tablespace tempts tempfile '/u01/app/oracle/oradata/EMREP/temp01.dbf' size 200M autoextend on next 20M maxsize unlimited;--创建临时表空间 

表空间扩容

SQL> alter tablespace hyl add datafile '/u01/app/oracle/oradata/PROD/disk5/hyl.dbf' size 2000m;--给hyl表空间扩容约2GSQL> select tablespace_name,segment_space_management from user_tablespaces;--查看表空间段管理方式(是否为自动扩展)SQL> alter database datafile '/u01/app/oracle/oradata/PROD/disk5/hyl.dbf' autoextend on; --开启自动扩展 

如何分析表?

SQL> analyze table emp3 estimate statistics; 

配置监听后立即完成注册?

SQL> ALTER SYSTEM REGISTER; 

系列三、WAS相关

Linux下启动WAS的方法?

./stopServer.sh server1路径一般在profiles文件路径下,例如“/opt/IBM/WebSphere/AppServer/profiles/AppSrv01/bin”。 

WAS优化?

1、连接池的连接数设置2、java虚拟机的堆大小设置(内存的分配)3、应用现场的端口号设置4、启动servlet高速缓存 

系列四、Oracle相关

oracle开机自启动设置?

# vi /etc/rc.d/rc.local添加如下面的例子:su - oracle -c "/u01/app/oracle/product/11.2.0/db_1/bin/dbstart start"su - oracle -c "/u01/app/oracle/product/11.2.0/db_1/bin/lsnrctl start"
# vi /etc/oratab更改为开机启动xcky:/home/u01/app/oracle/product/11.2.0/db_1:Y 

逻辑备份的方法?

导出复杂写法:exp user/password@service buffer=128000 feedback=10000 filesize=15G file_format=D:\信息大表20100101_%s.dmp TABLES='P表' query=\"where create_datetime<=to_date('20100101','yyyymmdd')\" log=D:\bak\信息大表20100101.log导入复杂写法:>imp user/password@service fromuser=user1 touser=user2 feedback=10000 ignore=y commit=y filesize=15G file=D:\bak\信息小表名.dmp log=D:\bak\信息小表名Imp.log

系列五、操作系统

如何打开win下注册表?

运行中输入regedit。 

如何快速使用远程连接?

mstsc。 

 

第一阶段,基础指令按回忆简要总结至此。

时间结点:2014102日   星期四   于北京

 

以下杂记,无关于技术

        疲惫后反思,冷静后的设想,对于未来却有了些迷茫。迷茫于未来的不知去往何方,迷茫于漫长的漂泊是不是刚刚开始,却发现手中的oracle有些颤抖,于是摆在眼前的路,低下头,体会着oracle带来的快乐。 

        蓝,有时候觉得自己变得越来越敏感,有时候也会觉得孤单的漂泊没有尽头,却都在无数个同样的清晨醒来后,释怀这些束缚。看着这个世界的自己,看着未知的旅程,周遭传来的质疑与嘲笑,却在一刹那间让自己又成长了一些。很多时候,都想褪去伪装的面纱,像个孩子一样无忧无虑的微笑,却发现,想要成为一只深海中傲然的鲸,就需要继续探寻到鲸群的路,需要振作,向更蓝的海岸游去。。。。。。

        蓝的世界里,常常嘴上一句话带过,心里却反复重复着什么难以释怀的情愫,有时候感觉到在自己的世界里,似乎没有预想的那么简单,自己的内心远比自己所预想的要复杂的多。常常也矛盾着,既想重新开始一份感情,却左右徘徊后,害怕难以释怀的感觉再次出现,而继续折磨自己的内心一样。于是选择了不去理会,逃避着那份曾经可以吹嘘的骄傲与勇气,选择平静的一个人在夜里,独自等待。

        不知会再过多久,但蓝始终相信,终有一天,会看见地平线的曙光,映照出波光的倩影。

***********************************************声明*********************************************************************** 

原创作品,出自 “深蓝的blog” 博客,欢迎转载,转载时请务必注明出处,否则追究版权法律责任。

深蓝的blog:http://blog.csdn.net/huangyanlong/article/details/39738501

****************************************************************************************************************************

系列链接:

蓝的成长记——追逐DBA(1):奔波于路上,挺进山东 

蓝的成长记——追逐DBA(2):安装!安装!久违的记忆,引起我对DBA的重新认知

蓝的成长记——追逐DBA(3):古董上操作,数据导入导出成了问题 

蓝的成长记——追逐DBA(4):追忆少年情愁,再探oracle安装(Linux下10g、11g) 

蓝的成长记——追逐DBA(5):不谈技术谈业务,恼人的应用系统

蓝的成长记——追逐DBA(6): 做事与做人:小技术,大为人 

蓝的成长记——追逐DBA(7):基础命令,地基之石