oracle 维护问题
发布网友
发布时间:2022-05-06 02:30
我来回答
共7个回答
热心网友
时间:2022-05-06 04:00
1.是的,主键自动创建为索引。你还可以创建其他字段为索引。
2.这个不太清楚,index_stats应该是oracle的一个内存表,按理应该可以查到数据的。
3.这个你还是先学习下基本的sql语法吧。
4.这个有可能是sql文的问题。只能具体问题具体分析。
5.没有维护数据库方面的经验,只有使用的经验。多用用搜索引擎吧。oracle DBA还是很需要专业知识的,建议买一本oracle数据库管理方面的书籍学习。
热心网友
时间:2022-05-06 05:18
嗯,关于第一个问题:
-----------
SQL> create table test (
2 id number(2),
3 name char(20)
4 );
Table created
SQL> alter table test add primary key (id); --添加id为主键
Table altered
SQL> select constraint_name, constraint_type , index_name
2 from user_constraints
3 where table_name = 'TEST'; --查阅表的约束性信息
CONSTRAINT_NAME CONSTRAINT_TYPE INDEX_NAME
------------------------------ --------------- ------------------------------
SYS_C0084246 P SYS_C0084246
SQL> select index_name, index_type, uniqueness
2 from user_indexes
3 where table_name = 'TEST'; --查询表的索引信息
INDEX_NAME INDEX_TYPE UNIQUENESS
------------------------------ --------------------------- ----------
SYS_C0084246 NORMAL UNIQUE
---------------------
也就是说Oracle在创建主键时自动会添加索引。
第二个问题:
表 user_indexes 才是查询当前用户所有索引对象的表;
第三个问题:
创建索引:create index ID_NAME on TEST (NAME);
删除索引:drop index ID_NAME;
如果存在索引相关的约束性条件,则应该先删除约束;
第四、第五个问题:
这个比较宽泛,包括硬件的IO性能,Oracle的SGA、PGA配置,索引性能等等,最好直接一下Oracle 性能优化。
热心网友
时间:2022-05-06 06:52
可以业务不繁忙的时候 rebuild一下、。、不用手动重建的。
数据库慢要针对具体的sql,看是不是索引导致的问题,再对症下药。
热心网友
时间:2022-05-06 08:44
1 是
2没有值肯定为空,要么你进错用户了
热心网友
时间:2022-05-06 10:52
你这问题太多了。。。 很难一下讲清楚。看起来你公司应该不小,要是买了Oracle的技术支持,去metalink开SR吧
热心网友
时间:2022-05-06 13:16
不懂oracle