Oracle的安装:
进入u01目录,cd /u01
创建目录,mkdir –p app/oracle
修改u01目录的权限,chown –R oracle :install /u01
修改五个文件的内容,五个文件在帮助文档2.6节
修改.bash_profile文件,它在home目录下,cd ~进入
进入u01目录,解压oracle,uzip 10201_database_linux32.zip进行解压
启动vnc,vncserver
vi /home/oracle/.vnc/xstartup,修改文件,去除两个#
kill掉这个vnc,vncserver –kill :1(这个数字是vnc的号)
打开vnc的exe程序,输入ip:192.168.98.11 :1进行连接,前面是ip地址,后面是vnc的id号,(ˇ?ˇ) 进入vnc时是database目录下
在vnc的exe程序界面,打开终端,进入/u01/databse目录,用ls –l 查看文件,执行./runInstaller
执行后可以看到oracle的安装界面
选择高级安装选项(第二个选项),点击next后,看到的目录指出安装文件在什么地方
选择install database software only
先选择只安装数据库软件
vnc.exe界面,dbca命令
选择general...选项,点击next,设置global database name和sid
选择sample schemas
设置character sets,选择第三个,再选择utf8
sqlplus / as sysdba,进入sql了
startup 打开数据库
shutdown immediate关闭数据库
show parameter sga 查看sga的相关参数
alter system set sga_target=150m scope=both 修改参数
修改sga_max_size特殊参数时需要先关闭数据库再执行其它操作
重点:第一章、第三章、第九章、第二十章20.1、20.3
监听、EM、五个数据字典,redo日志等文件
索引的种类和意义,优化sql文,分区表,给分区表加索引(分区索引)
Oracle Server由例程(instance)和数据库(Database)组成。
PGA(Program Global Area):用于存放服务器进程的数据和控制信息。它是独立于SGA的一块内存区域。
共享池shared pool : 包括库高速缓存Library Cache和数据字典高速缓存Dictionary Cache。
Library Cache:1、存放最近执行的sql语句信息,包括sql语句文本、解析代码值以及执行计划。执行计划是指如果有索引可以用,则用索引,如果没有则进行全表扫描。还有一个命中率。
2、包含许多上下文区Context Area,每个上下文区包含相应的sql语句的执行计划,这些上下文区又被称为共享游标。编写完全相同的sql语句将共享相同的上下文区。编写完全相同的sql语句:①语句文本相同;②大小写相同;③赋值变量相同。如
select * from emp where empno=7788
select * from emp where empno=7788
这两条sql语句是不同的,因为它们长度不一样,oracle会分配不同的上下文区。Dictionary Cache:用于存放数据字典的信息,包括表、列的定义以及权限信息。库高速缓存和数据字典高速缓存的尺寸是动态变化的,不是固定的。
数据高速缓存Database Cache Buffer:用于存放最近访问的数据块信息。它由许多小缓冲区(缓冲区尺寸=数据块尺寸)组成。
初始化参数DB_CACHE_SIZE:用于定义标准数据高速缓存的尺寸,该参数是
必须定义的。
初始化参数DB_BLOCK_SIZE:用于定义标准数据块的尺寸,大小介于2K和32K之间
初始化参数DB_nK_CACHE_SIZE:用于定义非标准数据高速缓存的尺寸,该类参数不是必需的。
标准数据块大小的数据会使用DB_CACHE_SIZE所定义的标准数据高速缓存。非标准数据块大小的数据会使用DB_nK_CACHE_SIZE所定义的非标准数据高速缓存。
什么时候DBWR会写文件:
1、系统发出检查点(CheckPoint)
2、服务器进程不能找到空闲缓冲区
3、删除或截断表
4、使表空间正常脱机(alter table …offline normal)
5、开始表空间备份(alter tablespace…begin backup)
什么时候写redo日志:
1、commit的时候
2、每隔3秒钟写一次
3、redo log buffer里面的内容大于1兆的时候
4、redo log buffer里面的内容大于1/3的时候
5、DBWn写文件之前
后台进程
System Monitor:自动进行数据库恢复
Process Monitor:自动将坏死的进程杀死掉
Database Writer:几个cpu,就有几个DBW,将Buffer Cache中的内容写到Data files
Archiver process:redo日志将要切换时,把要被覆盖的redo日志的内容写入到归档日志Archive log files。该后台进程只有在archivelog模式下才有用,默认只有一个ARCH0进程,通过设置初始化参数log_archive_max_process最多可以定义10个ARCH进程(ARCH0~ARCH9)。
Checkpoint process:用于发出检查点,检查点会同步数据库的数据文件、控制文件和重做日志。当发出检查点时,后台进程CKPT将检查点时刻的SCN(System Change Number)写入到控制文件和数据文件头部,同时促使后台进程DBWR 将所有脏缓冲区写入到数据文件中。Control files:oracle的核心文件,控制文件
发出检查点时,后台进程CKPT、DBWR、LGWR都会开始工作。
什么时候CKPT会开始工作
1、日志切换
2、关闭进程
3、手工检查点操作alter system checkpoint
4、有初始化参数fast_start_mttr_target强制发出检查点
alter system checkpoint; 手工检查点操作
alter system archive log current; 手工归档活动的日志文件组
alter system archive log all;手工归档所有的日志文件组
alter system switch logfile;日志切换
数据库的物理结构
数据文件data files,用于存储数据库数据,包括系统数据(数据字典)、用户数据(表、索引、簇)、UNDO数据等。数据库逻辑上由一个或多个表空间组成,而表空间物理上由一个或多个数据文件组成。
当建立临时表空间时,使用TEMPFILE选项可以指定临时文件(Temporary File),用于存放排序操作产生的临时数据。
重做日志redo log:用于记录数据库的变化,会记录DDL和DML操作
DDL:定义语言,如create,drop等
DML:管理语言,对数据的增删改锁
DQL:检索语言
DCL:控制语言,如commit和rollback
控制文件control file:用于记录和维护数据库的物理结构,每个oracle至少要包含一个控制文件。控制文件包含的信息:数据文件的位置和大小,重做日志文件的大小和位置,数据库的名称以及创建时间,日志序列号。
归档日志archive log,是非活动重做日志的备份。在archivelog模式下才能生成归档日志,进行redo日志切换也可以自动生成归档日志。
参数文件parameter file:用于定义启动例程所需的初始化参数,包括扩文本参数文件(text parameter file)和服务器参数文件(server parameter file)。
口令文件password file:用于验证特权用户,特权用户是指具有sysdba和sysoper 权限的特殊数据库用户,默认情况只有一个特权用户sys。
预警文件alert file:由连续的消息和错误组成,并且按照时间顺序存放。通过预警文件,可以查看oracle内部错误、块损坏错误、非默认初始化参数,可以监视特权用户的操作、数据库物理结构的改变。预警文件的位置由初始化参数background_dump_dest确定,内容由服务器进程和后台进程DBWR和LGWR写入。
后台进程跟踪文件:用于记载后台进程的警告或错误信息,每个后台进程都有相应的跟踪文件,位置由参数BACKGROUND_DUMP_DEST确定。
服务器进程跟踪文件:用于记载服务器进程的相关信息,主要用户跟踪sql语句,位置由USER_DUMP_DEST确定。
服务器进程用于处理连接到该例程的用户进程的请求。
服务器进程主要执行的任务:
1、对应用多发出的sql语句进行语法分析和执行
2、从磁盘读取数据文件到sga的buffer cache
3、将结果返回给应用进程
数据库的逻辑结构
数据库数据物理上存放在数据文件中,逻辑上存放在表空间中。
数据库——>表空间——>段——>区——>数据块
1、表空间
表空间是数据库的逻辑组成部分,建议将不同类型的数据部署到不同的表空间,可以提高数据访问性能、便于数据管理、备份和恢复等操作。Oracle数据库中应包含的表空间有六种:
SYSTEM表空间:用于存放系统数据(数据字典)
SYSAUX表空间:用于存储数据库辅助系统信息
临时表空间:用于存放排序后产生的临时数据
UNDO表空间:用于存放undo数据
数据表空间:用于存放表数据
索引表空间:用于存放索引数据
2、段segment
段用于存储特定逻辑对象的所有数据,它由一个或多个区组成。
表段:也称为数据段,用于存储表的所有数据,创建表时,会分配一个段。
索引段:用于存储索引的所有数据,建立索引时,会分配一个段。
临时段:用于存储排序操作产生的临时数据。
Undo段:用于存储事务所修改数据的旧值。
3、区extent
区是oracle进行空间分配的逻辑单元,它由相邻的数据块组成。
4、数据块(oracle块)
数据块是在数据文件上执行I/O操作的最小单位,其尺寸应该设置为OS块的整数倍。
Oracle工作原理:
1、用户进程和服务器进程
在客户端运行的应用程序启动的相应的进程是用户进程。
Oracle在服务器端为用户进程派生的一个新进程为服务器进程。
2、连接和会话
连接connection,是用户进程到服务器进程的网络通信通道。
会话session,是特定用户的连接,连接和会话是一对多的关系,但同一个时刻一个连接对应于一个会话。例如,当使用SQL*PLUS工具连接到oracle server时,建立了一个物理连接,以scott用户连接时,建立scott会话,以system用户连接时,建立system会话。
3、处理查询操作
服务器进程处理select语句的过程:解析parse,执行execute,提取结果fetch。
解析:检查sql语句的语法和语义,将sql语句及其执行计划装载到库高速缓存。
执行:被选择的数据所在数据块不在缓冲区,则从数据文件中读到缓冲区。
提取数据:将被选择的数据返回到客户端。
4、处理DML语句:
解析:检查语句的语法、语义和权限,并生成执行计划,装载到库高速缓存。
执行:检查修改行数据在数据高速缓存中是否存在,如果不存在,则读进来。在修改行上加行锁,表上加表锁,将数据变化写到redo日志缓冲区,将新数据写到数据缓冲区,将旧数据写到undo块的缓冲区。
4、处理commit
客户端运行commit语句时,将其发送给服务器进程处理。
①将commit语句以及SCN写入redo日志缓冲区
②LGWR将redo日志缓冲区的内容写入到redo日志文件
③将提交完成信息返回到用户进程
④释放事务所占用的表锁和行锁
5、oracle database 10g的新特征
1、允许DBA使用alter database default tablespace命令指定数据库的默认表空
间;
2、允许DBA使用alter database tablespace rename重命名表空间
3、提供了SYSAUX表空间存放各种oracle选项的信息。
4、允许DBA建立Bigfile表空间,它只能包含一个最多包含4G个数据块的
数据文件。
5、可以使用多个临时表空间,提高了排序的性能。
6、允许将表空间搬移到其他OS平台上。
7、提供了自动存储管理ASM。
8、允许使用drop database命令删除数据库及其所有文件。
9、可以自动克隆表的相关对象。
10、默认情况下自动搜集表的统计信息。
11、使用参数resumable_timeout激活了空间自动分配特征。
12、使用参数shared_servers激活共享服务器特征。
第三章管理例程
1、初始化参数存储在参数文件中,启动和关闭例程时必须提供相应的参数文件。启动和关闭例程必须由特权用户(默认是sys)完成。
2、常用初始化参数
db_name: 用于定义数据库名称,必须与create database后的数据库名匹配。
db_domain: 用于指定数据库在分布式网络环境中的逻辑位置,它和db_name一起构成了全局数据库名。
instance_name: 用于指定例程的唯一名称。
service_name: 用于指定客户连接到例程时可以使用的一个或多个服务名称。control_files: 用于指定一个或多个控制文件名,最多可以指定8个控制文件。db_block_size: 用于指定标准数据块的尺寸,在建立数据库时设置,创建以后将不能修改。
db_cache_size: 用于指定标准数据高速缓存的尺寸。
shared_pool_size: 用于指定共享池的大小。
log_buffer: 用于指定redo日志缓冲区的尺寸。
sga_max_size: 用于指定sga的最大尺寸。
java_pool_size: 用于指定java池的大小。
large_pool_size: 用于指定大缓冲区的尺寸。
pag_aggregate_target: 用于指定例程所有服务器进程可占用的总计pga空间remote_login_passwordfile: 用于指定特权用户的验证方式,其值可以是none,shared和exclusive。
undo_management: 用于指定undo的管理模式,可以是auto或manual。
undo_tablespace: 用于指定启动例程时使用的undo表空间名。
db_file_multiblock_read_count: 用于指定全表扫描时一次I/O操作可读取的最大数据块个数。
background_dump_dest: 用于指定预警文件和后台进程跟踪文件的位置。
user_dump_dest: 用于指定服务器进程跟踪文件的位置。
processes: 用于指定连接到oracle的并发用户进程的最大个数。
open_cursors: 用于指定单个会话可以同时打开的最大游标个数。
4、参数文件
pfile:文本参数,修改初始化参数就手工编辑。
spfile:以二进制格式存放,不能手工修改。
alter system set resource_limit=true scope=spfile;
5、建立pfile,只有特权用户才能执行该用户
create pfile=[pfile_name] from spfile=[spfile_name];
6、建立spfile,只有特权用户才能执行
spfile易于管理,可以使用rman进行备份。
create spfile=[spfile_name] from pfile=[pfile_name];
7、确定例程所使用的参数文件类型
用sys登录,>show parameter spfile;
如果value存在返回值,则例程正在使用spfile,如果没有,则例程正在使用pfile。
8、显示所有初始化参数:>show parameter
查询初始化参数的详细信息:>select * from v$parameter; 只能由特权用户和DBA用户查询。
9、显示静态参数
静态参数是指只能通过修改参数文件而改变的初始化参数。
动态参数是指在数据库运行时可以使用alter system和alter session命令动态改变的初始化参数。
isses_modifiable用于标识初始化参数是否可以通过alter session修改。
issys_modifiable用于标识初始化参数是否可以通过alter system修改。
显示静态参数:select * from v$parameter where
isses_modifiable=’false’ and issys_modifiable=’false’;
10、修改动态参数
>alter session set nls_date_format=’YYYY-MM-DD’; 只对当前会话生效
会话已更改
>select sysdate from dual;
SYSDA TE
----------------
2004-03-31
alter system set user_dump_dest=’c:\test’ scope=memory;
scope=memory表示只是修改内存的参数值
使用alter system set ……..deferred修改参数只对新建立的会话起作用,对已存在的会话不起作用,alter system set ……对所有会话生效。
11、启动例程并打开数据库包括以下3个步骤:
①启动例程nomount:首先读取参数文件,然后分配SGA并启动后台进程,同时打开预警文件和后台进程跟踪文件。
②启动例程并装载数据库mount:装载数据库,打开控制文件,从控制文件中读取数据文件和redo日志文件的信息。
③启动例程打开数据库open:打开数据库,打开所有数据文件和redo日志文件。
④以受限模式打开数据库:>startup restrict; 此时,普通用户不能访问数据库,只有特权用户、DBA用户和具有restricted session权限的用户可以访问数据库。
当数据库处于open状态时,特权用户或DBA用户可以激活或禁止受限模式:>alter system disable restricted session; 禁止受限模式
激活是怎样的???
12、停止例程
shutdown命令只能由特权用户执行。
①shutdown normal: 等待会话断开再关闭数据库,不允许新的会话连接进来。
②shutdown tranctional: 等待事务rollback或commit后再关闭数据库。
③shutdown immediate: 立即关闭数据库,没有commit的事务做rollback操作。
④shutdown abort:什么也不管立即关闭数据库,不发出检查点,不关闭数据文
件,下次启动数据库时,要进行例程恢复。
前三种操作会发出检查点,关闭数据库,保证数据一致性,不需要例程恢复。13、暂停和重新开始数据库
执行数据库备份时,为了防止在数据文件和控制文件上I/O冲突,可以暂停数据库,使用命令:>alter system suspend; 此时禁止在数据文件和控制文件上的任何I/O操作。
重新开始数据库,可以使用命令:>alter system resume
14、激活sql跟踪:
激活当前回话的sql跟踪:>alter session set sql_trace=true;
激活特定会话的sql跟踪:>dbms_system.set_sql_trace_in_session;
激活所有会话的sql跟踪:设置初始化参数sql_trace=true;
第五章数据字典和动态性能视图
1、数据字典包括数据字典基表和数据字典视图,基表是存放数据库的基本信息,普通用户不能直接访问基表。视图是基于数据字典基表建立的视图,用户可以查询。
数据字典视图包括三种类型:dba_xxx, all_xxx, user_xxx.
dba_xxx:所有数据库对象,用户必须具有dba角色或select_catelog_role角色。all_xxx:当前用户有权访问的所有对象
user_xxx:当前用户所对应的方案的所有对象
demo要访问scott的表dept
>conn scott/tiger @demo;
>grant select on dept to demo;
>conn demo/demo @demo;
>select * from scott.dept;
2、数据字典内容
①对象定义,使用包dbms_metadata可以取得对象定义的语句
>select dbms_metadata.get_ddl(‘table’,’emp’) ddl from dual;
②对象占用的空间,从user_segments中查询。
>select bytes, segment_name from user_segments;
查询还剩多少空间,要先分析表:
>analyze table emp compute statistic
>表已分析
>select empty_blocks, blocks from user_tables;
③列信息,从user_tab_columns中查询
>select column_name, data_type, default_value from user_tab_columns;
④约束信息,从user_constraints和user_cons_columns中查询
⑤用户名、权限而后角色
查询数据库用户的详细信息:dba_users;
显示用户或角色的系统权限:dba_sys_privs;
显示用户或角色的对象权限:dba_tab_privs;
显示用户或角色具有的列权限:dba_col_privs;
显示用户或角色具有的其它角色:dba_role_privs;
3、常用数据字典
①DICT,用于显示当前用户可访问的数据字典视图
②DICT_COLUMNS,用于显示数据字典视图每个列的作用
③dual,用于取得函数的返回值,>select user from dual;
④global_name,用于显示当前数据库的全名
⑤ind:用于显示当前用户所具有的所有索引和索引统计信息
⑥obj:用于显示当前用户所拥有的所有对象
⑦seq:用于显示当前用户所具有的所有序列
⑧syn:用户显示当前用户所拥有的所有同义词和同义词所对应的数据库对象名
⑨tab:用于显示当前用户所拥有的所有表、视图和序列
4、常用动态性能视图
大多数动态性能视图只能由特权用户和DBA访问。
1.v$fixed_table:用于列出所有可用的动态性能视图和动态性能表
2.v$instance:用于取得当前例程的详细信息
3.v$sga:用于显示sga的主要组成部分(共享池、数据高速缓存和redo日志缓存)
4.v$sgainfo:用于列出sga的更详细的信息
5.v$parameter:用于取得初始化参数的详细信息
6.v$version:用于取得oracle版本的详细信息
7.v$option:用于显示oracle已经安装的选项
8.v$session:用于显示会话的详细信息
9.v$process:用于显示与oracle相关的所有进程的信息
10.v$database:用于显示当前数据库的详细信息
11.v$controlfile:取得当前数据库的控制文件信息
12.v$datafile:取得当前数据库所有数据文件的信息
13.v$dbfile:取得数据文件的编号和名称
14.v$logfile:显示重做日志成员的信息
15.v$log:显示日志组的详细信息
16.v$tablespace:显示表空间信息
17.tempfile:显示当前数据库包含的临时文件
5、nomount只能访问从sga中获取信息的动态性能视图,有:
v$parameter, v$sga, v$option, v$process, v$session, v$version, v$instance mount能访问从sga和控制文件中获取信息的动态性能视图,有;
v$thread, v$controlfile, v$database, v$datafile, v$datafile_header, v$logfile
问题:以system登录数据库,显示数据库的所有文件
第七章管理重做日志
1、重做日志的目的:实现例程恢复和介质恢复。
2、重做日志组(redo log group)和重做日志成员(redo log remember)
日志组的每个重做日志文件叫做日志成员。同一个日志组的每个日志成员都具有相同的日志序列号和尺寸。
日志序列号是重做日志的标识号,其数值顺序递增,当进行日志切换时,日志序列号会自动增一,并将该信息写入到控制文件中。
3、重做线程(redo thread)
单例程时,只有一个重做线程,多例程时,每个例程都有独立的重做线程,每个重做线程拥有自己的日志组,各个日志组之间没有关系。
4、日志切换
自动日志切换:一个日志组被写满后,LGWR会自动切换日志组。
手工日志切换:>alter system switch logfile;
5、什么时候会发出检查点:
第一,发生日志切换的时候
第二,关闭数据库的时候,shutdown normal, transactional, immediate时,shutdown abort 时不发出检查点
第三,手工发出检查点,>alter system checkpoint;
第四,设置初始化参数fast_start_mttr_target控制。
6、例程失败的几种情况:
第一,断电,
第二,硬件不可用,
第三,某个必需的后台进程出现失败。
7、增加日志组
>alter database add logfile ‘D:\demo\redo03.log’ size 10M;
或>alter database add logfile group 4 ‘D:\demo\redo03.log’ size 10M; 显式指定组号增加日志成员:
>alter database add logfile member ‘D:\demo\redo03.log’ to group 2;
删除日志成员:>alter database drop logfile member ‘D:\demo\redo03.log’;
删除日志组:>alter database drop logfile group 4; 逻辑删除
初始化日志组,并重新生成日志组成员:
>alter database clear logfile group 2;
8、日志组处于inactive状态时,可以使用OS命令复制或移动到其他位置
>host copy D:\demo\redo2b.log F:\demo\redo2b.log;
改变控制文件记载的重做日志的指针:
>alter database rename file ‘D:\demo\redo2b.log’ to ‘F:\demo\redo2b.log’;
>select group#, sequence#, members, status from v$log;
>select group#, member, status from v$logfile;
第八章管理归档日志
1、日志操作模式
noarchivelog:不保留重做日志历史的日志操作模式。
当检查点完成之后,后台进程LGWR可以覆盖原有重做日志的内容,
如果数据库备份后的重做日志内容已经被覆盖,那么当出现数据文件损坏时只能恢复到完全备份点,
执行数据库备份时,只能用shutdown normal或shutdown immediate关闭数据库,执行数据库备份时,必须备份所有的数据文件和控制文件。
archivelog:保留重做日志历史的日志操作模式。
出现介质失败时,可以防止数据丢失
当数据库处于open状态时,可以备份数据库,并且不会影响到数据库的使用
出现数据文件损坏时,除了system表空间的数据文件,其它数据文件都可以在open状态下恢复
执行数据库的恢复时,不仅可以执行完全恢复,而且还可以执行特定点的恢复。
2、检查当前日志操作模式
>select log_mode from v$database;
改变日志操作模式:在mount状态下
>alter database archivelog;
显示归档日志信息:>archive log list;
>select name, sequence#, first_change#, from v$archived_log;
问题:显示所有归档日志文件名和对应的日志序列号
显示日志操作模式、归档目录以及日志序列号
第九章管理表空间和数据文件
1、表空间:
第一,通过表空间可以控制数据库所占用的磁盘空间
第二,通过表空间可以控制用户所占的空间配额
第三,通过表空间,DBA可以将不同类型的数据部署到不同的表空间,一方面可以提高I/O性能,另一方面益于备份和恢复。
2、数据文件
一旦将数据文件追加到某个表空间后,就不能删除该数据文件了,只能删除它所在的表空间。
3、建立表空间
>create tablespace……
>create bigfile tablespace……
>create temporary tablespace…..
>create undo tablesapce……
4、改变表空间的读写状态
>alter tablespace tbs read only;
>alter tablespace tbs read write;
5、删除表空间
>drop tablespace tbs including contents and datafiles;
6、扩展表空间——增加数据文件
>alter tablespace tbs add datafile ‘D:\demo\user01.dbf’ size 10M;
7、允许数据文件自动扩展
>alter database datafile ‘D:\demo\user01.dbf’ autoextend on next 10M maxsize 1G;
8、移动数据文件
第一,在open状态下,使用alter tablespace命令完成,首先要使表空间处于offline 状态,该命令不能移动system和sysaux表空间。
脱机:>alter tablespace user01 offline;
移动:>host move D:\demo\user01.dbf E:\demo\user01.dbf;
逻辑修改:>alter tablespace user01 rename datafile
‘D:\demo\user01.dbf’ to ‘E:\demo\user01.dbf’;
联机:alter tablespace user01 online;
第二,在mount状态下移动数据文件,可用于移动任何表空间的数据文件
关闭并装载数据库:>shutdown immediate;
>startup mount;
移动数据文件到目标位置:
>host move D:\demo\system01.dbf E:\demo\system01.dbf;
逻辑修改:alter database rename file
‘D:\demo\system01.dbf’to ‘E:\demo\system01.dbf’;
打开数据库:>alter database open;
9、显示表空间详细信息:>select * from dba_tablespaces;
显示表空间的编号和名称:select * from v$tablespace;
显示表空间包含的数据文件:>select * from dba_data_files;
显示数据文件动态信息:>select * from v$datafile;
显示临时表空间组的信息:>select * from dba_tablespace_groups
select * from dba_temp_files;
第十章管理undo表空间
1、undo数据的作用
回退事务、读一致性、事务恢复、倒叙查询
2、undo_management为true,自动管理undo数据,为false,手动管理。
undo_tablespace是undo表空间
undo_retention:设置undo数据的最大保留时间
3、建立undo表空间
>create undo tablespace undotbs datafile ‘D:\demo\undo01.dbf’ size 10M;
增加数据文件:
>alter tablespace undotbs add datafile ‘D:\demo\undo02.dbf’ size 10M;
切换undo表空间
>alter system set undo_tablespace=undotbs2;
删除undo表空间
>drop tablespace undotbs;
4、显示数据库的所有undo表空间
>select tablespace_name from dba_tablespace where contents=’UNDO’;
查看当前使用的undo表空间
>show parameter undo_tablespace;
第十一章管理对象空间
1、表段:用于存储表的所有数据,每建立一张表时,oracle就分配一个同名的段,一个表段只能存放在一个表空间上。
2、表分区段(table partition):用于存储分区表某个分区的数据,每个分区对应于一个表分区段。
3、簇段(cluster):用于存储簇表的数据,名称与簇名相同。簇用于逻辑组织相关表的数据,使用簇的目的是为了降低I/O次数,提高性能。
4、索引段(index):用于存储索引的数据,其名称与索引名相同,一个索引段只能存放在一个表空间中,
5、显示数据库包含的所有段类型:
>select distinct segment_type from dba_segments;
显示区信息:>select * from dba_extents;
第十八章管理索引
1、B树索引列的个数不能超过32个,位图索引列的个数不能超过30列。
复合索引的列可以相同,但顺序不能相同。
2、唯一索引:索引列的值不能重复的索引。
非唯一索引:索引列的值可以重复的索引。
无论是唯一索引还是非唯一索引,索引列都允许null。
3、建立索引的一些指导方针:
索引应该建立在where子句经常引用的表列上;
多表连接时,应该在连接列上建立索引;
不要在小表上建立索引;
经常做排序操作的列应该要建立索引;
限制表的索引个数;
删除不需要的索引;
删除查询语句不会引用到的索引;
使用nologging选项建立索引
3、B树索引:如果表数据非常多,并且经常在where子句中引用该列或几列,则应该要建立B树索引。
>create index idx on emp(empno) pctfree 30 tablespace user02;
位图索引:经常需要数据统计、数据汇总,建在重复值很多、不同值相对固定的列上,所占用的空间会比较少。
>create bitmap index idx on customers(cust_gender);
反向索引:表的数据量非常庞大,将导致索引数据分布不均,为此可以建立反向索引,但只适用于等值查询。
>create index idx on customers(cust_id) reverse;
修改B树索引为反向索引:>alter index idx rebuild reverse;
函数索引:是基于函数或表达式建立的索引。如果经常在where子句中引用函数或表达式,则应建立基于函数或表达式的索引。建立函数索引的用户必须具有query rewrite的系统权限。
>create index idx on customers(lower(cust_first_name));
课堂笔记
buffer cache中的内容写入到Data files的频率不能太快,
因为它要占用很多cpu资源,容易造成死机
它的写入与一个参数有关—mttr(写周期)
查看mttr参数:>show parameter mttr;
>! ps –ef | grep ora_
数据文件、控制文件、redo日志文件、归档日志文件。
备份文件是做数据库恢复的首选。
先用备份文件恢复到昨天,再用redo日志重做需要的操作,用来恢复数据。
口令文件存放DBA的password。
预警和跟踪日志文件:
u01/app/oracle/admin/ntc/
admin:存放跟踪文件和参数文件。
(a,b,c,d,u)dump:指预警跟跟踪文件
pfile中存放参数文件,.ora是参数文件
查看归档是否打开>show parameter log_archive;
关闭数据库,进入mount状态才能开归档:>startup mount
开归档:>alter system archivelog;
查看sga的相关参数:>show parameter sga
修改参数:>alter system set sga_target=150m scope=both
修改sga_max_size特殊参数时需要先关闭数据库shutdown immediate
>alter database archivelog修改archivelog
>alter database open
>archive log list查看archive的相关信息
>select * from v$logfile查看redo日志文件
>alter system switch loglife切换redo日志
查看归档日志文件:
在目录/u01/app/oracle/flash_recovery_area/NTC/archivelog/2012_09_02/,在该目录下即可看到归档日志文件,如o1_mf_1_4_8462twdr_.arc
用init 0命令需切换到root用户下
查看归档日志archive log list
查看archive的相关参数:show parameter log_archive
修改归档日志的路径
alter system set log_archive_dest='/u01/app/oracle/archive' scope=both;不允许修改
查看redo日志select * from v$logfile , desc v$logfile 动态视图
查看数据文件select * from v$datafile , desc v$datafile
查看控制文件show parameter control
查看参数文件show parameter pfile(文本文件)(spfile二进制文件)
查看归档日志archive log list
查看预警文件show parameter bdump ,alter_ntc.log 预警日志
预警文件的位置/u01/app/oracle/admin/ntc/bdump/alter.ntc.log
配置监听文件的位置/u01/app/oracle/product/10.2.0/db_1/network/admin/samples 参数文件的位置/u01/app/oracle/admin/ntc/pfile
归档日志的位置/u01/app/oracle/flash_recovery_area/NTC/archivelog/2012_09_02/ redo日志的位置/u01/app/oracle/oradata/ntc
控制文件的位置/u01/app/oracle/oradata/ntc
sqlplus sys/oracle as sysdba
conn system/oracle连接数据库
show user 查看当前用户
orapwd file=orantc password=oracle新建口令文件
desc v$tablespace 表空间
select * from v$tablespace 有7个表空间
desc v$datafile
select https://www.wendangku.net/doc/6f7402717.html, tsname, https://www.wendangku.net/doc/6f7402717.html, fname from v$tablespace a, v$datafile b;
区extent、段segment、块block
段:存放表,一个段中存放同一个表的数据
区:由数据块组成
datablock 数据块,8k大小
数据块——>区——>段——>表空间——>数据库——>方案
show parameter segment;
select * from dict where table_name like ‘%SEGMENT%’; dict是总的字典
create user hurong identified by oracle;
grant connect, resource to hurong;
conn hurong/oracle;
show user;
建立一个表就会有一个段
select * from user_segments;
select SEGMENT_NAME from user_segments;
desc user_tablespaces;
select * from user_tablespaces a, user_tables c
where table_name=’STUDENTINFO’ and c.tablespace_name=a.tablespace_name conn / as sysdba
select ts#, name from v$tablespace;
为数据库制定计划
Oracle管理框架
三个组件:
1、数据库实例
2、监听程序
3、管理界面
Enterprise Manager(EM)
不能进入em
配置监听:命令行:netca,listener configuration
配置本地服务,service name 是数据库名字,hostname是服务器的ip地址tnsping ntc;
http://192.168.98.11:1158/em在浏览器中打开EM
lsnrctl status查看listener的status
emctl status dbconsole查看EM的status
emctl start dbconsole启动EM
进入admin目录
cd samples
cp listener.ora .. 将listener.ora文件复制到samples的上一级目录
cp tnsnames.ora ..
cd .. 进入admin目录
vi listener.ora
listener=以上的东西全删掉,password一下的全删掉,其余的删除掉注释符#,再进行其他修改,如截图所示,最后保存。
vi tnsnames.ora
从开头删除至alias,本地域名的名字。总之进行修改至如图所示:
修改保存之后进行操作:
lsnrctl start; 启动监听lsnrctl stop 关闭监听
tnsping ntc; 测试命令,oracle的net工具,功能:①验证名字解析(name resolution);②远程的listener是否启动
emctl start dbconsole; 启动EM emctl stop dbconsole 关闭监听
再在虚拟机上启动浏览器http://192.168.98.11:1158/em
9月4号
/u01/app/oracle/product/10.2.0/db_1/network/
修改listener.ora文件,让host=ntc.oracle;
启动监听和EM,再在windows下用浏览器访问EM
isqlplus:可以通过网页访问数据库
参数文件的位置:/u01/app/oracle/product/10.2.0/db_1/dbs/spfilentc.ora
Linux: 看文本文件cat/more spfilentc.or a 看二进制文件strings spfilentc.ora
查找顺序:spfilentc.ora→pfilentc.ora→init.ora
alter system set sga_max_target=150m scope=both加scope后,修改后的结果会保存,下次启动时也会生效。如果没有则只会修改当前启动的数据库,下次启动时则数据库不会改变。
参数文件spfile丢失,create pfile from spfile,多了initntc.ora文件。
也可以create spfile from pfile;
数据库启动时默认读取一个pfile,此时不能建立pfile。
如果spfile和pfile都丢失了,则找到跟踪文件/u01/app/admin/ntc/bdump/目录下的文件alert_ntc.log,把参数复制过去。
db_domain这一行删除掉
oracle的启动和关闭
open→mount→nomount→shutdown
>start nomount,在此状态下进行手动的数据库的恢复,数据的迁移。
启动nomount要读参数文件,打开跟踪文件,启动后台进程,启动例程,不装入数据库。
mount状态:读控制文件和参数文件,启动实例、装入数据库但不打开数据库,不能访问redo日志和数据文件,开归档,关归档,完整的数据库恢复,如断电,系统自动完成。
mount状态下instance是打开的,数据库处于mounted状态。
open状态:读参数文件和控制文件,打开数据文件,打开redo日志,打开数据库。
打开:
startup nomount→alter database mount(打开mount状态,startup只能用一次)→alter database open
关闭:级别由高到低
abort,立即关闭,其他什么都不管,再次启动时要自动恢复数据库immediate,会回退未提交的事务处理
transactional,如果有事务还没有提交就不关闭数据库
normal,等待会话断开,只要有人连接到数据库,就不能关闭数据库,但是不允许新的连接进来。
后三种方式不会造成数据的不一致和脏数据。
select sql_text, executions from v$sql where cpu_time>200000;
select * from v$session where machine=’EDRSR9P1’ and logon_time>sysdata-1; select sid, ctime from v$lock where block>0;
动态视图一般以v$开头
v$fixed_table
oracle中查询rowid是最快的,因为rowid中存放的是物理地址。
如果块大,则多行数据放在一个块里面,会降低查询效率,如果块小,则一行数据放在多个块里面。
数据块的结构:
块头block head:包含段类
型、数据块
地址、表目录、行目录和事
物处理插槽。
行数据row data:块中行的
实际数据。
空闲空间free area:可以根
据需要扩展头和行的数据空
间,可以指定大小,是数据
库非常稳定。
1.ARP的中文名称及作用? 地址解析协议将IP转化为MAC地址 2.MAC的广播地址? FF-FF-FF-FF-FF-FF 3.如何解决ARP欺骗? PC 和网关双向绑定MAC 地址 4.总结交换机的工作原理? 学习广播转发单薄 5.交换机和路由器哪个设备转发数据包时会修改MAC地址?为什么要修改? 路由器 当网关路由器接收到以太网数据帧时,发现数据帧中的目标MAC地址是自己的某一个端口的物理地址, 这时路由器会把以太网数据帧的封装去掉。路由器认为这个IP数据包是要通过自己进行转发, 着它就在匹配路由表。匹配到路由项后,它就将包发往下一条地址。 路由器转发数据包不会对它的IP源地址和目标地址做修改,只会修改MAC. 6.TCP/IP五层模型每一层对应的设备分别是什么? 物理层网卡数据链路层交换机 网络层路由器传输层防火墙应用层计算机 7.如何实现交换机之间的VLAN通讯? 单臂路由或者三层交换 8.单臂路由的缺陷是什么? 1.“单臂”为网络骨干链路,容易形成网络瓶颈 2.子接口依然依托于物理接口,应用不灵活 3.VLAN间转发需要查看路由表,严重浪费设备资源 9.CEF包含的两个转发信息表分别是什么? 转发信息库(FIB)邻接关系表 10.如何将三层交换机的交换接口转换为路由接口? in f0/0 no switchport 11.如何在三层交换机上启用路由功能? ip routing 12.配置DHCP中继的命令是什么?
in vlan 10 ip helper-address 1.0.0.1 13.写出路由器配置DHCP的命令及步骤? (config)#ip dhcp pool pool-name (dhcp-config)#network network-number mask (dhcp-config)#default-router gateway-ip (dhcp-config)#dns-server dns-ip (dhcp-config)#lease days hours mins (config)#ip dhcp excluded-address low-address [high-address] 14.简述什么是广播风暴? 广播风暴,当广播数据充斥网络无法处理,并占用大量网络带宽, 导致正常业务不能运行,甚至彻底瘫痪,这就发生了“广播风暴” 15.STP是什么协议?主要作用是什么? Spanning Tree Protocol(生成树协议) 逻辑上断开环路,防止广播风暴的产生 当线路故障,阻塞接口被激活,恢复通信,起备份线路的作用 16.什么是BPDU? BPDU是运行STP的交换机之间交换的消息帧。 BPDU内包含了STP所需的路径和优先级信息 17.生成树算法分为哪三个步骤? 选择根网桥选择根端口选择指定端口 18.网桥ID的缺省值是多少? 32768 19.网桥ID最大的会成为根网桥还是最小的会成为根网桥? 小的 20.STP路径成本19和路径成本100分别代表的链路带宽是多少?100Mbps 10Mbps 21.网桥ID占用几个字节?取值范围是多少? 8 0--65535 22.端口ID的缺省值是多少? 128 23.端口ID占用几个字节?取值范围是多少? 2字节0--255
______总结 运维工程师工作总结 撰写人:_________ 部门:_________ _____年___月___日 (此内容仅供参考,可编辑)
运维工程师工作总结 时间一晃而过,弹指之间,xx年悄然而至,自从xx年3月份刚进入公司,我是第一次接触公司、接触通信行业、接触公司网络管理及维护。虽然跟我的专业和技能都一致,以下就是运维工程师年终总结。 但所有的实际经验都是第一次,让我没有任何准备,同样也打消了任何顾虑,人生就是这样,所有的一切都是要从第一次开始,没有接触过、干过并不可怕,领导给了我机会,让我有了一次尝试、一次展现自己的平台,那么我一定会更加倍的努力做好工作才是最大的回报。并且也是对自己的一次肯定。经过一段时间的工作及陌生环境的磨合,专心钻研业务知识,努力提高理论知识和业务工作水平。遵纪守法,踏实工作认真完成领导交办的各项工作任务,使自己渐渐的融入和适应到新的工作环境中。 公司电脑日常维护工作 刚一开始接手工作的时候,发现公司大部分工作电脑都没有安装安全防护软件和升级系统补丁;员工随意安装系统及应用软件,致使公司局域网内病毒隐患严重、工作不稳定和系统崩溃,工作秩序被打乱,员工不严格要求自己,上班时间聊qq、玩农场、看娱乐网站等;为此公司和个人工作经常受到影响,工作效率降低。针对这种情况,我采取了以下措施: 1、先对公司员工进行一次基本知识培训,让员工了解到计算机的正确使用方法,病毒防范,重要文件的备份等。从而大大提高了员
工对电脑使用的熟练程度。 2、先恢复良好的秩序。电脑使用时如发现故障和需更改设置,必须先报告公司运维人员,由专门人员来进行专业及针对化的操作,个人不能私自进行改动,进行这样做的目的避免由于人为的盲目操作使某一台电脑的故障影响整个局域网内的其它工作,使故障扩大化,并延长了解决问题的周期。 3、使员工使用统一的、经过安全测试的系统及应用软件,安装、设置统一的杀毒软件、防火墙等安全防护软件,且经过努力实践,并在每台机器上设定了自动系统补丁升级及定期查杀规则。 对于个人的关键性数据资料、邮件进行路径转移备份,使这些数据远离危险故障点,避免意外丢失所带来的严重后果。操作系统进行常规定期备份,便于事后的还原。 运维工程师工作总结【二】 至20xx年底,XX有限公司在xx公司的运维又届满一年的时间了。 在这为期一年的运维工作当中,xxxx的业务飞速发展,设备数量不断增加,人员的技术水平和业务知识有了显著的提升。 我们的队伍在技术水平和管理经验上也有了本质的提高。 一、细致缜密的完成计划中的日常运维工作: 严把质量;服务至上;严格要求;技术领先。 1.承接运维工作初始信息技术部的各位领导就对我们的运维工
it 运维面试题及答案 【篇一:运维中心笔试题答案】 xt> 一、单项选择 1、t-sql 语句是由哪一家公司设计出的:(a)a microsoftb ibmc sun 2、sql-server 的数据库类型属于哪一类型:(a) a 关系型数据库 b 网络型数据库 c 层次型数据库 3、要启动sql -server 的服务器,在命令提示符下键入以下什么 命令可以启动sql -server 服务器:(b) a net send b net start mssqlerver c net help 4、输入和调试t-sql 语句的工具是:(b) a 企业管理器 b 查询分析器 c 服务器网络使用工具 d 联机丛书 5、创建数据库的关键字是: (b) a delete b create c from d talbe 6、数据库的日志文件的扩展名是:(b) a mdf b ldf c ndf d log 7、创建表的主约束使用哪个关键字:(b) a check b primary c foreign d rull 8、datetime 属于什么数据类型:(a) a 日期型 b 时间型 c 字符串型 d 整数型 9、下列数据类型中不能属于sql_variant 型的是:(c) a varchar b int c image d datetime 10、存储过程sp_bindrule 的作用是什么:(a) a 绑定规则 b 查看表结构 c 绑定默认值 d 查看过程 11、insert 表示的含义:(a) a 添加 b 删除 c 查询 d 更改 12、sql-server 中外键约束关键字为:(c) a primary key b unique c foreign key d check 13、alter view 表示:(b) a 创建视图 b 更改视图 c 检索视图 d 删除视图 14、去掉结果集中的重复值用关键字: (b ) a top b distinct c in d null 15、语句“delete from 员工表where 工资2000”表示含义:(a) a 删除工资大于2000 的员工资料 b 添加工资>2000 的员工姓名 c 检索工资>2000 的员工姓名 d 更改工资>2000 的员工姓名
北京华宇信息技术有限公司 BEIJING THUNISOFT INFORMATION TECHNOLOGY CORPORATION LIMITE 北京华宇信息技术有限公司 应聘人员笔试题目 (对应聘系统服务工程师人员适用) 姓名: 性别: 年龄: E-Mail: 考试日期: 考试开始时间: 考试结束时间: 须知及要求: 1.本套试题对应聘运维服务部系统服务工程师适用; 2.笔试时间不得超过90分钟; 3.笔试开始前应聘者须如实填写本页中有关应聘者信息; 4.答题请注意字迹清晰,叙述简练明了,绘图力求准确; 5.笔试题共150分,84道题,分为六部分,包括: 1)系统服务工程师调查 2)理论知识部分 3)实践知识基础部分 4)实践知识扩展部分 5)运维管理和信息服务部分 6)综合素质和沟通管理部分 6.应届毕业生以1、2、3、5、6部分为主,其他部分为辅;非应届毕业生以2、3、 4、5、6部分为主,其他部分为辅; 7.请笔试者本着“知之为知之,不知为不知”的态度; 笔试者承诺: 我已经阅读并同意笔试要求,同意如实答题,并同意不将题目内容告知他人。 签名:
CORPORATION LIMITE 应聘登记表 填表要求:应聘登记表是公司了解应聘人员情况的重要途径之一,所以请应聘人员根据自己的实际情况尽可能的填写详细,填写结束后,请务必阅读声明并签字确认。谢谢您的合作! 填写说明:家庭背景情况请至少填写2位直系亲属的基本情况 填写说明:教育经历请按照时间顺序由近至远填写(最低学历填写到高中即可)
CORPORATION LIMITE 填写说明:工作经历请按照时间顺序由近至远来填写 请您在以下招聘途径中勾“√”:我是通过以下招聘途径了解此次招聘信息的:□公司主页招聘信息□现场招聘会□熟人介绍 □网上招聘(请具体描述网站名称,例如:前程无忧等__________________)声明: 本人保证以上表内所填内容的真实性,自愿承担因隐瞒事实而造成的一切后果。 签名:日期:
xxxx运维服务工作总结
目录 1概述....................................................................... 2运维项目背景............................................................... 3运维目标................................................................... 4运维人员配备............................................................... 5运维工作总结............................................................... 5.11-8月份................................................................... 5.1.1XXXX系统测试与部署 ................................................... 5.1.2协助XXXX机房搬迁..................................................... 5.1.3二线专家支撑.......................................................... 5.1.4XXXX系统优化 ......................................................... 5.29-12月份.................................................................. 5.2.1系统运维支撑.......................................................... 系统巡检方式............................................................ 远程方式............................................................. 现场方式............................................................. 系统维护巡检内容........................................................ 远程方式巡检内容..................................................... 现场方式巡检内容.................................................... 系统运行分析............................................................ 系统CPU分析......................................................... 系统内存分析......................................................... 系统硬盘空间分析..................................................... 系统进程运行分析..................................................... 系统故障分析......................................................... 现网作业工作............................................................ 5.2.2业务协维.............................................................. 系统业务管理............................................................ 运营支撑内容............................................................ ZS业务客户服务与支持..................................................... 运营数据分析............................................................ 5.2.3专家服务.............................................................. 运维体系的建立.......................................................... 输出文档 ............................................................... 运维、系统二线支撑......................................................
1、Linux如何挂载windows下的共享目录 ‘{print $1″.”$2″.”$3″.”$4″.”}’ | sort |uniq -c | sort -nr | head-5 4、如何查看/var/log目录下的文件数 ls /var/log/ -1R | grep “-” | wc -l 5、如何查看Linux系统每个ip的连接数 netstat -n | awk ‘/^tcp/ {print $5}’ | awk -F: ‘{print $1}’ | sort | uniq -c | sort -rn 6、shell下生成32位随机密码 cat /dev/urandom | head -1 | md5sum | head -c 32 >> /pass 7、统计出apache的中访问量最多的5个ip cat | awk ‘{print $1}’ | sort | uniq -c | sort -n -r | head -5 8、如何查看二进制文件的内容 我们一般通过hexdump命令来查看二进制文件的内容。 hexdump -C XXX(文件名) -C是参数不同的参数有不同的意义 -C 是比较规范的十六进制和ASCII码显示 -c 是单字节字符显示 -b 单字节八进制显示 -o 是双字节八进制显示 -d 是双字节十进制显示 -x 是双字节十六进制显示 9、ps aux 中的VSZ代表什么意思,RSS代表什么意思 VSZ:虚拟内存集,进程占用的虚拟内存空间 RSS:物理内存集,进程战用实际物理内存空间 10、如何检测并修复/dev/hda5 fsck用来检查和维护不一致的文件系统。若系统掉电或磁盘发生问题,可利用fsck命令对文件系统进行检查 11、介绍下Linux系统的开机启动顺序 加载BIOS–>读取MBR–>Boot Loader–>加载内核–>用户层init一句inittab文件来设定系统运行的等级(一般3或者5,3是多用户命令行,5是界面)–>init进程执行–>启动内核模块–>执行不同级别运行的脚本程序–>执行/etc/(本地运行服务)–>执行/bin/login,就可以登录了。 12、符号链接与硬链接的区别 我们可以把符号链接,也就是软连接当做是windows系统里的快捷方式。 硬链接就好像是又复制了一份,举例说明: ln 这是硬链接,相当于复制,不可以跨分区,但修改3,4会跟着变,若删除3,4不受任何影响。
桌面运维面试题 集团文件版本号:(M928-T898-M248-WU2669-I2896-DQ586-M1988)
1.电脑无法上网(打不开网站),请给出你的排查步骤? 1)首先确定物理链路是否联通正常。 2)查看本机IP、掩码、网关、DNS的设置情况是否正确。 3)Ping本机回环地址,检测网卡驱动及TCP/IP协议是否安装正常。 4)测试到网关或路由器的通畅情况,先测网关,然后再测路由器一级 一级的测试。 5)测试Ping公网IP的通畅情况(记住几个外部IP)。 6)使用nslookup 或Ping 测试DNS是否能正常解析网站域名。 注:也可以在1、2步完成之后,从后向前排查。 2.请口述DNS的解析过程 当浏览器或应用程序要求解析一条域名时,首先检查本机Hosts文件和DNS缓存中是否存在对应的条目,如果有,直接返回该条目,如果没有,则开始下面的查询步骤。 1)客户机提出域名解析请求,并将该请求发送给本地域名服务器。? 2)当本地域名服务器收到请求后,就先查询本地的缓存,如果有该纪录 项,则本地域名服务器就直接把查询的结果返回。 3)如果本地的缓存中没有该纪录,则本地域名服务器就直接把请求发 给根域名服务器,然后根域名服务器再返回给本地域名服务器一个 所查询域(根的子域)的主域名服务器的地址 4)本地服务器再向上一步返回的域名服务器发送请求,然后接受请求 的服务器查询自己的缓存,如果没有该纪录,则返回相关的下级的 域名服务器的地址。?
5)重复第四步,直到找到正确的纪录。 6)本地域名服务器把返回的结果保存到缓存,以备下一次使用,同时还 将结果返回给客户机。 3.电脑开机黑屏无反映,常见的排错方法是什么? 1)按主机电源开关,看主机开关指示灯是否亮起,若不亮,检查主机 电源线是否接触良好,检查插板等是否通电。若亮灯,继续下一 步。 2)主机指示灯亮,看显示器指示灯是否亮起,若不亮,检查显示器电 源连接线以及信号线(VGA线),是否接触良好。【若之前挪动过电脑或重新拔插过VGA连接线,就要检查看两端的的针是否有异 常,若发生断针或歪斜针,纠正使其端正即可解除故障】若完 好,继续检查下一步 3)主机灯亮、显示器灯亮、数据线完好,电脑仍旧是黑屏,且硬盘灯 不闪烁,键盘灯也不亮,这时候先断开主机电源,然后按主机电 源开关,在不通电的情况下按主机电源开关和复位按钮4到5 次,重新接通电源,开机,电脑黑屏故障解除。若开机后还是故 障依旧,继续排除下一步。 4)打开电脑主机侧盖,拔掉内存条,用橡皮擦擦拭内存条的金手指正 反面,装回卡槽内,再次开机测试,若故障恢复,即可断电后安 装好盖子。若故障依旧,继续下一步检测。
运维工程师面试题 姓名: 答题时间: 1.新安装MYSQL后怎样提升MYSQL的安全级别? A.修改mysql默认端口 B.linux下可以通过iptables来限制访问mysql端口的IP地址 C.对所有用户设置较复杂密码并严格指定对应账号的访问IP(可在mysql库 中user表中指定用户的访问可访问IP地址) D.root特权账号的处理(建议给root账号设置强密码,并指定只允许本地登录) E.开启二进制查询日志和慢查询日志 F.mysql安装目录及数据存储目录权限控制:给mysql安装目录读取权限,给mysql日志和数据所在目录读取和写入权限 G.删除无用mysql账号和删除无用的数据库(安装好的mysql默认会有个 test库,可将其删除) 2.MYSQL的主从原理,怎么配置文件? 整体上来说,复制有3个步骤: A.master将改变记录到二进制日志(binary log)中(这些记录叫做二进制日 志事件,binary log events); B.slave将master的binary log events拷贝到它的中继日志(relay log);
C.slave重做中继日志中的事件,将改变反映它自己的数据。 3.mysql主从复制的优点 <1> 如果主服务器出现问题,可以快速切换到从服务器提供的服务; <2> 可以在从服务器上执行查询操作,降低主服务器的访问压力; <3> 可以在从服务器上执行备份,以避免备份期间影响主服务器的服务。 4.Mysql复制的基本原理过程 (1)Slave上面的IO线程连接上Master,并请求从指定日志文件的指定位置(或者从最开始的日志)之后的日志内容; (2)Master接收到来自Slave的IO线程的请求后,通过负责复制的IO线程根据请求信息读取指定日志指定位置之后的日志信息,返回给Slave端的IO线程。返回信息中除了日志所包含的信息之外,还包括本次返回的信息在Master端binary log文件的名称以及在Binary log中的位置; (3)Slave的IO线程收到信息后,将接收到的日志内容依次写入到Slave端的RelayLog 文件(mysql-relay-lin.xxxxx)的最末端,并将读取到的Master端的 bin-log的文件名和位置记录到master-info文件中,以便在下一次读取的时候能够清楚的告诉master“我需要从某个bin-log的哪个位置开始往后的日志内容,请发给我” (4)Slave的SQL线程检测到Relay Log中新增加了内容后,会马上解析该Log 文件中的内容成为在Master端真实执行时候的那些可执行的查询或操作语句,并在自身执行那些查询或操作语句,这样,实际上就是在master端和Slave端执行了同样的查询或操作语句,所以两端的数据是完全一样的。
项目总结报告 编制人:strong 审核人:
项目名称: 客户名称: 项目经理: 报告起草人: 日期:月26日 2. 项目背景与要求 随着整个“十一五”信息化总体规划的逐步落实,各类信息系统陆续开始建设并投入运行,的企业信息化水平正在不断提高,计算机和网络的作用显得越来越重要。公司是集团信息化进程中不可缺少的一部分,办公运维项目组作为公司的基本组成部分,对公司的发展起着非常重要的作用。办公运维项目的前身是IT运维组,主要负责15层网络基础设施的日常监测维护工作以及桌面应用系统的管理和维护。随着公司业务的快速发展,人员的不断增加,15层办公区已经不能满足员工的办公需求。因此公司又租赁了濠庭、大厦等办公区,因此IT运维组,在2011年4月更名为办公运维项目组,负责公司15层设备间的日常监测维护工作、所有办公区公共IT设施的维护工作、VOIP语音系统的技术支持、以及桌面应用系统的管理和维护。 我们的工作目标是建立和完善一个良好的管理制度和运维流程,加强对整个队伍的管理,并通过不断的学习和培训,不断提升自身的能力,从而逐步提升服务水平和事件处理能力,做到一线事件处理解决能力达到60%以上。 为员工提供可靠、稳定、安全、高速的网络及其他办公配套设施运维服务; 确保网络7×24小时安全稳定运行;为公司信息化建设和各项业务的顺利开展提供IT运维支持。
[从完成项目的进度、成本、质量、团队管理、客户关系等方面进行评价] 3.1.完成了项目的哪些交付成果?没有完成的工作是哪些?原因是什么? 全年稳定、安全的网络环境 其他办公配套设施IT运维服务 一线事件处理解决能力达到60%以上 无未完成的工作 3.2.对项目的总体评价 按照年初制定的工作计划,基本保质保量的完成了全部工作,确保了为公司员工提供全年稳定、安全的网络环境及其他办公配套设施IT运维服务,并保证一线事件处理解决能力达到60%以上。 通过技术培训讲座、师带徒、及买服务提供培训等形式的内、外部培训,大大降低了人员培训的成本。并且随着项目组人员技术的提高,一般故障我们均能自行解决,从而降低了厂家维修费和服务费,很大程度的降低了运维成本。 在团队管理及建设方面,一方面根据运维工作的特殊性,严格要求考勤及工作时间,确保工作时间内随时能受理故障报告。另一方面注重人性化管理和团队建设,使团队氛围和谐融洽,提高了项目成员的工作积极性和主动性。 因为我项目为公司内部项目,客户关系相对较为简单,多为公司领导和员工,也有少数外部顾问等。通过日常的运维和处理故障,很多客户对我们的工作给予了很多肯定,同时也提出了部分意见,我们根据意见和建议积极改正工作方法,为以后工作的高效进行提供了保障。 3.3.进度方面评价: 3.3.1.项目实际进展情况与计划进度如何? 根据年初制定的工作计划,我项目所有工作进度基本符合计划要求。
一、有文件file1 1、查询file1 里面空行的所在行号 awk ?{if($0~/^$/)print NR}‘ file or grep -n ^$ file |awk ?BEGIN{FS=‖:‖}{print $1}‘ 2、查询file1 以abc 结尾的行 grep abc$ file1 3、打印出file1 文件第1 到第3 行 sed -n ‘1,3p‘ file1 head -3 file1 二、如何将本地80 端口的请求转发到8080 端口,当前主机IP 为192.168.2.1 Iptables -A PREROUTING -d 192.168.2.1 -p tcp -m tcp –dport 80 -j DNAT –to-destination 192.168.2.1:8080 三、crontab 在11 月份内,每天的早上6 点到12 点中,每隔2 小时执行一次/usr/bin/httpd.sh 怎么实现 0 6-12/2 * 11 * /usr/bin/httpd.sh 四、编写个shell 脚本将/usr/local/test 目录下大于100K 的文件转移到/tmp 目录下 #!/bin/bash for file in `ls /root` do if [ -f $file ]; then if [ `ls -l $file|awk '{print $5}'` -gt 10000 ]; then mv $file /tmp/ fi fi done 五、简述raid0 raid1 raid5 三种工作模式的工作原理及特点。 RAID 0:连续以位或字节为单位分割数据,并行读/写于多个磁盘上,因此具有很高的数据传输率,但它没有数据冗余,因此并不能算是真正的RAID 结构。RAID 0 只是单纯地提高 性能,并没有为数据的可靠性提供保证,而且其中的一个磁盘失效将影响到所有数据。因此,RAID 0 不能应用于数据安全性要求高的场合。 RAID 1:它是通过磁盘数据镜像实现数据冗余,在成对的独立磁盘上产生互为备份的数据。当原始数据繁忙时,可直接从镜像拷贝中读取数据,因此RAID 1 可以提高读取性能。RAID 1 是磁盘阵列中单位成本最高的,但提供了很高的数据安全性和可用性。当一个磁盘失效时, 系统可以自动切换到镜像磁盘上读写,而不需要重组失效的数据。简单来说就是:镜象结构,类似于备份模式,一个数据被复制到两块硬盘上。 RAID10:高可靠性与高效磁盘结构 一个带区结构加一个镜象结构,因为两种结构各有优缺点,因此可以相互补充。 主要用于容量不大,但要求速度和差错控制的数据库中。 RAID5:分布式奇偶校验的独立磁盘结构,它的奇偶校验码存在于所有磁盘上,任何一个硬盘损坏,都可以根据其它硬盘上的校验位来重建损坏的数据。支持一块盘掉线后仍然正常
2019运维部年终工作总结5篇 精选运维部年终工作总结(一) 去年的年末,我来到了运维部。这是一个技术岗位,刚来的我,对于我的工作可以说是相当的陌生。大多数仪器、设备都不认识,不像书本上讲的那些。它们对于我来说都是新的,需要学习来完成工作。我对我的工作充满了热情,如饥似渴的去学习书籍,请教同事,慢慢的汲取知识和经验。刚开始,每一次出去解决故障,我都有点担心,怕工作做不好,所以每一次,我都认真向前辈们学习,看他们如何去操作仪器,如何去分析故障点,不懂的我就问为什么。 还有不懂的,我就回来查电脑,自己消化,直到理解。正是自己对知识渴求的欲望和缺乏专业知识带来的恐慌,一直鞭策着我,风风雨雨走过了这一年。值得欣慰的是,这一年,我通过向别人学习和自己的努力,学到了不少东西,积累了一些经验,有时候也可以独立完成一些工作。下面我就自己这一年来的工作做个总结: 1、学会了做标准的568B网线,学会了做2M线。知道了网线的线序,知道了2M线的用途。 2、认识了光纤和ODF架,知道了法兰盘子,知道了如何用光纤连接法兰盘子。 3、学会了如何使用光源和光功。知道了它们各自的功能和所显示的数值所代表意义。 4、知道了如何使用OTDR去打光纤的全程长度,熟悉了如何用OTDR测试新融光纤的质量,如何查故障点、测衰耗。
5、学会使用了熔接机。了解了熔接机的结构,知道了如何区分单模熔接机和多模熔接机。 6、学会了如何在几个基站之间进行跳纤。并在同事的协助下为广电跳通了2条有线电视专线。 7、对SDH有了一定的了解,并且知道了常用的OI2D和OI4D光口板和一些以太网板。知道了如何从型号上来辨别板子的类型。 8、学会了如何去基站更换板块以及该注意的一些事项。 9、协助资产盘查。对基站的各个设备有了进一步的了解,并且熟悉了好多基站的地理位置,为以后的维护打号了基础。 10、参与并协助完成相关割接。 11、管理应急库房。为日常的维护工作和割接等提供保障。这些或许对于别人,不算什么。但是对于我来说,这就是成绩,是对自己的鼓励。随着我对工作的深入了解,我越来越发现我有很多的知识点没有弄懂,正应了这句话:知道的越多,不知道的就越多。对于处于学习阶段的我来说,不断的积累工作经验、提高自身工作能力是首要任务。所以,我在以后的工作中会更加认真仔细的对待工作中的每个环节,争取把工作做的更好、更熟练。同时,我也会更加的努力去学习新的知识点,巩固以前的知识,争取让自己的技术达标,能够独立承担工作,为公司的发展奉献自己的力量。 参考运维部年终工作总结 (二) 时间飞逝,20xx年即刻岁末。这一年对我来讲可谓是人生中的又一个起点和转折。它发生了太多太多的事,有些事将会影响我的一生。那些工作中的点点滴滴仍历历在目,有过欢笑也有过惆怅、有过激情满怀也有过意志消沉。但总的来说,这一年是我人生中不平凡、
1、Linux如何挂载windows下的共享目录? mount.cifs //IP地址/server /mnt/server -o user=administrator,password=123456 linux 下的server需要自己手动建一个后面的user与pass 是windows主机的账号和密码注意空格和逗号 2、如何查看http的并发请求数与其TCP连接状态? netstat -n | awk ‘/^tcp/ {++b[$NF]}’ END {for(a in b) print a,b[a]}’ 还有ulimit -n 查看linux系统打开最大的文件描述符,这里默认1024,不修改这里web服务器修改再大也没用。若要用就修改很几个办法,这里说其中一个: 修改/etc/security/limits.conf soft nofile 10240 hard nofile 10240 重启后生效 3、如何用tcpdump嗅探80端口的访问看看谁最高? tcpdump -i eth0 -tnn dst port 80 -c 1000 | awk -F”.” ‘{print $1″.”$2″.”$3″.”$4″.”}’ | sort |uniq -c | sort -nr | head-5 4、如何查看/var/log目录下的文件数? ls /var/log/ -1R | grep “-” | wc -l
netstat -n | awk ‘/^tcp/ {print $5}’ | awk -F: ‘{print $1}’ | sort | uniq -c | sort -rn 6、shell下生成32位随机密码 cat /dev/urandom | head -1 | md5sum | head -c 32 >> /pass 7、统计出apache的access.log中访问量最多的5个ip cat access.log | awk ‘{print $1}’ | sort | uniq -c | sort -n -r | head -5 8、如何查看二进制文件的内容? 我们一般通过hexdump命令来查看二进制文件的内容。 hexdump -C XXX(文件名) -C是参数不同的参数有不同的意义 -C 是比较规范的十六进制和ASCII码显示 -c 是单字节字符显示 -b 单字节八进制显示 -o 是双字节八进制显示 -d 是双字节十进制显示 -x 是双字节十六进制显示 9、ps aux 中的VSZ代表什么意思,RSS代表什么意思?
2019运维工作总结报告(通用) 目录 一、细致缜密的完成计划中的日常运维工作:严把质量;服务至上;严格要求技术。 (1) 二、吸收先进经验,保质保量的完成运维的各项任务: (2) 三、适应任务需要,及时解决运维过程中的遇到的问题: (3) 四、认真完成运维工作中的汇报、总结和知识积累工作: (4) 至20XX年10月底,XX有限公司在xx公司的运维又届满一年的时间了。在这为期一年的运维工作当中,xxxx的业务飞速发展,设备数量不断增加,人员的技术水平和业务知识有了显著的提升。我们的队伍在技术水平和管理经验上也有了本质的提高。 一、细致缜密的完成计划中的日常运维工作:严把质量;服务至上;严格要求技术。 1.承接运维工作初始信息技术部的各位领导就对我们的运维工作给予厚望,并提出了认真完善服务水平的方针。我们在服务过程中严格按照这一要求,以对保障xxxx的发展,对用户负责的精神,把“严把质量,服务至上”的原则贯穿于日常工作的各个环节之中。使本运维期过程中的客户满意度有了非常显著的提高,多次获得了用户的认可。 2.对于在工作中信息技术部提出的新要求、新方案,我们及时相应配合,本着“严格要求”的原则,对于提出的要求科学性的分析研究,及时提出完整周
密的解决方案,并拟请用户试行或测试后实施。有力的保障了运维工作的及时有效性。 对于提高服务业务技术水平上,按照信息技术部的统一规划,按时完成一系列的既定培训计划。按照“技术”的原则,通过技术上的培训提高了业务水平和解决故障的效率;通过制定有效的安全机制和培训,健全了xxxx信息外包人员安全机制;通过保密制度的培训使运维人员能够树立自觉维护xxxx的信息安全防范意识;通过客户服务意识的培训提高了客户的满意度。 二、吸收先进经验,保质保量的完成运维的各项任务: 运维期内主机、服务器、网络和桌面均没有发生严重的生产安全事故,对于一些潜在的威胁也都在得到信息技术部门的批示下,审慎周密的完成了整改工作。运用先进的技术和经验提高劳动效率和运维工作质量: 1.运用先进的运维工具提高劳动效率。通过监控软件随时保持信息的及时性、可控性,一旦发生问题可以迅速定位和修复。
简述DNS 分离解析的工作原理,关键配置 DNS 分离解析:针对同一个域名,为不同的客户机提供不同的解析结果 关键配置:通过view 语句为客户端分类,在每个视图内使用match-client 来匹配客户机的来源地址,每个视图内都定义目标DNS 区域但调用不同的地址库文件 简述MySQL 体系结构的组成,指带有数据库并整合了数据库管理软件的计算机系统并描述每个组成部分的作用。 主要包括8 个部分: 连接池:进程数限制、内存检查、缓存检查等。 SQL 接口:用户通过sql 客户端发过来的命令,由sql 接口接收,sql 操作(DML 数据操作语言:查询、修改、升级数据等;DDL 数据定义语言:创建一个新的数据库、新的索引、删除一个用户等;存储过程、视图触发器。 分析器: 分析查询语句事务处理对象访问权限。 优化器: 优化访问路径、生成执行树。 缓存和缓冲:保存sql 查询结果。 存储引擎:用于管理存储的文件系统,将逻辑结构转换为物理结构的程序;不同的存储引擎有不同的功能和存储方式。 管理工具:备份,恢复,安全,移植,集群等,这些工具一般和文件系统打交道,不需要和mysql-server 打交道,它们对应的都是命令。 物理存储设备(文件系统) 构建主从同步的思路 1. 确保数据相同–从库必须要有主库上的数据。 2. 配置主服务器–启用binlog 日志及设置格式,指带有数据库并整合了数据库管理软件的计算机系统设置server_id, 授权用户 3. 配置从服务器–设置server_id ,指带有数据库并整合了数据库管理软件的计算机系统指定主数据库服务器信息 4. 测试配置–客户端连接主库,指带有数据库并整合了数据库管理软件的计算机系统写入的数据,指带有数据库并整合了数据库管理软件的计算机系统在连接从库的时候也能够访问到。
自动化运维系统研发项目 总结报告 一、项目背景 随着信息时代的持续发展,IT运维已经成为IT服务内涵中重要的组成部分。面对越来越多复杂的业务、多样化的用户需求,不断扩展的IT应用需要越来越合理的模式来保障IT服务能灵活便捷、安全稳定地持续保障,从初期的几台服务器发展到庞大的数据中心,单靠人工已无法满足在技术、业务、管理等方面的需求,那么标准化、白动化、架构优化、过程优化等降低IT服务成本的因素越来越被广大行业客户重视。 二、自动化运维研发阶段性 经过对市场背景的分析,在公司高层资源的支持下,2016年7 月完成项目立项及成立研发项目团队,12月已完成初步框架认定工作,在对市场需求、业务环境调研过程中,认为白动化运维需满足架构独立、部署友好、可运维性、容错容灾、质量监控、性能成本、用户体验等特点。项目组经过半年的研发努力,项目研发有了阶段性的突破成果。 2.1架构独立 任何架构的产生都是为了满足特定的业务诉求,如果我们在满足 业务需求的同时,能够兼顾运维对架构管理的非功能性要求。那么我们有理由认为这样的架构是对运维友好的。站在运维的角度,所诉求的架构独
立包含四个方面:独立部署、独立测试、组件规范、技术解主田Afr 耦寺o 2.2部署友好 希望从端到端打通开发、测试、运维的所有技术环节,以实现快速部署和交付价值的目标。实现高效可靠的部署能力,要做好全局规划,要保证部署以及运营阶段的全方位运维掌控,从以上要求分析,有五个维度是对部署友好相关的:CMDI0己置、环境配置、依赖管理、部署方式、发布白测等。 2.3可运维性 运维从脑海中是最理想的服务架构,首先想到的事可运维性强的那种类型。不具可运维的应用或架构,对运维团队带来的不仅仅是难题,还有阻止运维人员职业发展前进堵绊脚石,因为维护一个没有可运维性的架构,简直就是在浪费运维人员的时间。因为可运维性按操作和管理规范应归纳为以下几点:配置管理、版本管理、标准操作、进程管理、空间管理、日志管理、集中管控等。 2.4容错容灾 运维的四大职责:质量、效率、成本、安全。安全是一个运维团队首要保障的,运维人员立项的高可用架构设计应该包含以下几点: 负载均衡、可调度性、本地双活、主从切换、柔性扩展等。 2.5质量监控 保证和提高业务质量是白动化运维研发的目标,而监控能力是我们实
运维工程师笔试题及答案 第一部分:Linux系统知识 填空题: 1.创建目录用mkdir命令,创建文件用touch命令。 2.移动文件用mv命令,复制文件用cp命令。 3.使用history命令查看用过的命令列表。 4.查看各类环境变量用env命令。 5.终止进程用kill命令。 6.编写的Shell程序运行前赋予该脚本文件读和执行权限。 7.链接分为:硬链接和软链接/符号链接。 8.在Linux系统中,以文件方式访问设备。 9.当前用户主目录用~/表示。 10.L inux下命令可使用的通配符有“?”和“*”。 选择题: 1.某文件的组外成员的权限是只读、属主是全部权限、组内权限是可读可写、该文件权限为?(D) A.467 B.674 C.476 D.764 2.Linux配置文件一般放在什么目录?(A) A.etc
B.bin C.lib D.dev 3.什么命令常用于检测网络主机是否可达?(C) A.ssh C.ping D.exit 4.对所有用户的变量设置,应当放在哪个文件下?(B) A./etc/bashrc B./etc/profile C.~/.bash_profile D./etc/skel/.bashrc 5.什么命令解压缩tar文件?(B) A.tar-czvf filename.tgz B.tar-xzvf filename.tgz C.tar-tzvf filename.tgz D.tar-dzvf filename.tgz 第二部分:数据库 填空题: 1.数据库系统的核心是___数据库管理系统___。 2.事务四大特性分别是原子性、隔离性、一致性、持久性。 3.索引字段值不唯一,应该使用的索引类型为普通索引。