oracle表被锁如何避免为什么产生很多垃圾表,怎样避免

oracle为什么产生很多垃圾表,怎样避免_百度知道
oracle为什么产生很多垃圾表,怎样避免
答题抽奖
首次认真答题后
即可获得3次抽奖机会,100%中奖。
来自电脑网络类芝麻团
采纳数:21329
获赞数:13369
参与团队:
使用oracle10g的朋友可能会发现以前删除的表在数据库中出现了很多垃圾表,如:BINjR8PK5HhrrgMK8KmgQ9nw==之类的表无法删除无法用delete 删除,一般不影响正常使用,但是有以下情况使我们必须删除它1,这些表占用空间2,如果使用Middlegen-Hibernate-r5的朋友会发现一些问题,不你象以前用oracle9时那么顺的生成hibernate配置文件,原因就在这里将它删除就没有问题了.3,其它情况BINjR8PK5HhrrgMK8KmgQ9nw==之类的表这个是10g 的新特性。Drop Table 后,没有真正的删除表,而是在“垃圾站”中了。可以通过:SQL& SHOW RECYCLEBIN看到。如果要彻底删除,使用:SQL& PURGE TABLE &BINjR8PK5HhrrgMK8KmgQ9nw==&;删除这一个或SQL& PURGE RECYCLEBIN;删除全部。
为你推荐:
其他类似问题
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。Oracle&是一个数据库管理系统,是Oracle公司的核心产品。其在数据安全性与安整性控制方面的优越性能,以及跨操作系统、跨硬件平台的数据操作能力。基于&客户端/服务  &     &器&(Client/Server)系统结构。
主要特点:
1.支持多用户、大事务量的事务处理。
2.在保持数据安全性和完整性方面性能优越。
3.支持分布式数据处理。将公布在不同物理位置的数据库用通信网络连接起来,组成一个逻辑上统一的数据库,完成
数据处理任务。
4.具有可移植性。Oracle可以在Windows、Linux等多个操作系统平台上使用。
Oracle基本概念:
1.数据库。这里的数据库是磁盘上存储数据的集合,在物理上表现为数据文件、日志文件和控制文件等。在逻辑上以表空
间形式存在。必须首先创建数据库,然后才能用Oracle。可以在Database&Configuation&Assistant上创建。
2.全局数据库名。用于区分一个数据库的标识。它由数据库名称和域名构成,类似网络中的域名,使数据库的命名在整个
网络环境中唯一。
3.数据库实例。每个启动的数据库都对应一个数据库实例,由这个实例来访问数据库中的数据。
4.表空间。每个数据库都是由若干个表空间构成的,用户在数据库中建立的所有内容都被存储到表空间中。一个表空间可
以由多个数据文件组成,但一个数据文件只能属于一个表空间。
5.数据文件。扩展名是.dbf,是用于存储数据库数据的文件。一个数据文件中可能存储很多个表的数据,而一个表的数据
也可以存放在多个数据文件中。数据文件和数据库表不存在一对一的关系。
6.控制文件。技展名.ctl,是一个二进制文件。控制文件是数据库启动及运行所必需的文件。存储数据文件和日志文件的
名称和位置。Oracle&11g默认包含三个控制文件。
7.日志文件。扩展名.log,它记录了数据的所有更改信息,并提供了一种数据恢复机制,确保在系统崩溃或其他意外出现
后重新恢复数据库。在工作过程中,多个日志文件组之间循环使用。
8.模式和模式对象。模式是数据库对象(表、索引等,也称模式对象)的集合。
Windows下Oracle数据库服务:
1.OracleServiceSID服务是Oracle数据库服务。此服务对应名为SID(系统标识符)的数据库实例创建的。必须启动。
2.OracleOraDb11g_homelTNSListener服务是监听器服务。要远程连接数据库服务器,必须连接监听进程,该服务只有
在数据库需要远程访问时候才需要。(PL/SQL等第三方工具连接就相当于远程连接)。
3.OracleDBConsoleSID服务是数据库控制台服务,是采用浏览器方式打开的,用于使用Oracle企业管理器的程序。如
果进入&基于Web形式的企业管理(EM)控制平台,必须要启动OracleDBConsoleSID服务。
连接数据库:
Sys和System用户都是Oracle的系统用户,Scott用户是Oracle数据库的一个测试账户,里男包含一些测试例表。每
个用户下所有的对象称为模式对象。
1.用SQL&Plus工具登录:
1)cmd-&sqlplus-&用户名:-&密码:
2)直接打开程序SQL&Plus-&用户名:-&密码
3)在输入用户名处-&用户名/密码@网络服务名
4)命令窗口:sqlplus&/nolog 这样就只是打开了sqlplus而并没有连接数据库,之后要连接数据库得继续敲:
connect&用户名/密码@数据库名;
2.PL/SQL&Developer工具:
1)用户名:输入System.
2)口令:输入对应密码。
3)数据库:输入已经配置好的网络服务名,如orclDB。
4)连接为:Normal普通用户;sysOper数据库操作员;sysDBA数据库管理员。
3.Java连接Oracle:
driver:&oracle.jdbc.driver.OracleDriver
url:&jdbc:oracle:thin:@localhost:1521:数据库名
DUAL伪表,在Oracle的查询语句中select和from关键字一定有值,但在某些情况下不需要from,如查询常量或函数,为
了满足要求,Oracle使用DUAL伪表来实现要求。
如: select&sysdate&from&dual;--查询出当前系统日期和时间
Oracle数据类型:
1.字符数据类型:
1)char数据类型。当需要固定长度字符串时,使用char。长度1~2000字节。如果没有指定大小,默认1字节。如果
用户输入的值小于指定的大小,系统用空格填充。如果大于,报错。
2)varchar2数据类型,支持可变长度的字符串。大小为1~4000字节。如果用户输入的值小于指定的大小,不用填充
,varchar2数据类型可以节省磁盘空间。如果varchar2想根据定义的长度存储相应的汉字个数,可以声明为
如:varchar2(10&char)
3)nchar数据类型,即国家字符集,使用方法和char相同。用来存储Unicode字符集类型,即双字节字符数据。最
小单位1字符。
4)nvarchar2与nchar类似,只是可变长度的。
2.数值数据类型number:
number数据类型可以存储正数、负数、零、定点数、精度为38信的浮点数。
语法:number(p,s) --如果不写p,s内容,是否是没有限制?
p&为精度,表示数字的有效位数,在1~38之间,从左边第一个不为0的数算起,小数点和负号不计入有效位数。
s&为范围,表示小数右边数字的位数,在-84~+127之间。
规则:首先精确到小数中右边s位,并四舍五入。如果精确后值的有效位数&=p,则正确;否则报错。
3.日期时间数据类型:用于存储日期值和时间值
1)date数据类型,用于存储表中的日期和时间数据。使用7字节固定长度,每个字节分别存储世纪、年、月、日、小
时、分和秒。sysdate函数的功能是返回当前的日期和时间。
2)timestamp数据类型,用于存储日期的年、月、日以及时间的小时、分和秒。秒值精确到小数小后6位,包含时区
信息。systimestamp函数的功能是返回当前日期、时间和时区。
改变日期格式:
Oracle中的SQL窗口:alter&session&set&nls&date&format=&YYYY-MM-DD&HH24:MI:SS&;//只对当前窗口有效。
环境变量:键:nls_date_format
值:YYYY-MM-DD&HH24:MISS
4.游标类型,SYS_REFCURSOR类型是Oracle提供的系统游标类型。
如下,过程返回一个游标类型:
CREATE&OR&REPLACE&PROCEDURE&get_sals(
cur_salary&OUT&SYS_REFCURSOR
OPEN&our_salary&FOR&
SELECT&empno,&sal&FROM&
LOB数据类型:
LOB又称为&大对象&数据类型。我叫存储4GB的非结构化信息,如声音剪辑和视频剪辑。LOB允许对数据进行高效、随
机、分段的访问。一个表中可以有多个列被定义为LOB数据类型。可以通过PL/SQL中提供的程序包DBMS_LOB修改。
1.CLOB(Character&LOB,字符LOB)存储大量字符数据。可以存储单字节字符数据和多字节字符数据,主要用于存储非结
构化的XML多档。如新闻、内容介绍等含大量文字内容的文档。
2.BLOB(Binary&LOB,二进制LOB)可以存储较大的二进制对象,如图形、视频剪辑和声音剪辑等。
3.BFILE(Binary&File,二进制文件)能够将二进制文件存储在数据库外部的操作系统文件中。BFILE列存储一个BFILE
定位器,指向位于服务器文件系统上的二进制文件。最大4GB。
4.NCLOB数据类型用于存储大的nchar字符数据。支持固定宽度字符和可变宽度字符(Unicode字符数据)。使用方法同
CLOB类似。
早期使用Long数据类型存储大数据。
Oracle中的伪列:
1.rouid,数据库中每一行都有一个行地址,rowid伪列返回该行地址。rowId值可以唯一标识数据库中的一行。
2.rounum,返回一个数值代表行的次序。通过使用rownum,用户可以限制查询返回的行数。
rownum对于等于某值的查询条件,可以使用rownum=1作为条件,但是不能等于大于1的值。
rownum对于大于某值的查询条件,可以使用rownum&1,但是不能大于1以上的值。
rownum对于小于某值的查询条件,可以rownum&大于1的整数。
例: select&*&from(
&& select&a.*,rownum&rn&from&(&&--这里设置了rownum的列别名,这样就可以在外层查询用between&and语句了&
&&&& select&*&from&employee&order&by&sal&desc
where&rn&between&5&and&9;
SQL语言分类:
数据定义语言(DDL&Data&Definition):create创建、alter更改、truncate截断、drop删除
数据操纵语言(DML&Data&Manipulation&Language):insert插入、select选择、delete删除、update更新
事务控制语言(TCL&Transaction&Control&Language):commit提交、savepoint保存点、rollback回滚
数据控制语言(DCL&Data&Control&Language):grant授予、revoke回收
数据定义语言DDL:
1.create&table命令:
create&table&[schema.]table_name
column_name&datatype,
column_name&datetype,
schema表示对象的所有者,即模式的名称。如果用户在自己的模式中创建表,则可以不指定所有者名称。
table表示表的名称。
column表示列的名称。
datatype表示该列的数据类型及其宽度。
表名命名规则:
1)表名首字符应该为字母。
2)不能使用Oracle保留字来为表命名。
3)表各的最大长度为30个字符。
4)同一用户模式下的不同表不能具有相同的名称。
5)可以使用下划线、数字、字母,但不能使用空格和单引号。
Oracel和SQL&Server数据库对象表之间的差异:
列数:Oracle,254;&SQL&Server,1024
行大小:Oracle没有限制;SQL&Server,8060字节,加16字节指向每个text或image列。
最大行数:Oracle没有限制;SQL&Server没有限制
表命名规则:Oracle,[schema.]table_&SQL&Server,[[[server.]database.]owner.]table_name
2.truncate&table命令:
可以只删除表中的记录而不删除表结构,删除表中的所有行而不记录日志。
truncate&table&&table_name&;
数据操纵语言DML:(insert,select,update,delete)
1.选择无重复的行,在select命令中包含distinct子句。
select&distinct&stuName,stuAge&from&stuI
2.使用列别名,列别名不会影响列的实际名称。列别名位于列表达式后面。
select&stuName&as&&姓&名&,stuAge&as&年龄,stuNo&编号&from&stuI
如果列别名中指定有特殊字符(如空格)的列标题使用双引号括起来。
3.利用现有表创建新表。
语法: create&table&&newTable_name&
select&{*&|&column(s)}&from&&oldTable_name&&[where&&condition&];
复制表结构和记录:
create&table&newStuInfo
select&*&from&stuI
复制表指定列和记录:
create&table&newStuInfo
select&stuName,stuAge,stuNo&from&stuI
只复制表结构:
create&table&newStuInfo
select&*&from&stuInfo&where&1=2;
4.查看表中行数:
select&count(1)&from&stuI --1比*号效率较高
5.取出stuName,stuAge列不存在重复的数据记录:
select&stuName,stuAge&from&stuInfo
group&by&stuName,stuAge
having(count(stuName||stuAge));//&||&在这里是连接操作符,类似于&+&,意思为将两部分内容连接在
一起,因为count()里面只能有一个列,所以连接起来。
6.删除stuName、stuAge列重复的行(相同数据只保留一行)
delete&from&stuInfo&where&rowid&not&in(
select&max(rowid)&from&stuInfo&group&by&stuName,stuAge&
having&(count(stuName||stuAGe)&1)
select&max(rowid)&from&stuInfo&group&by&stuName,stuAge
having&(count(stuName||stuAge)=1)
7.根据当前用户所有数据量&100万的表的信息
select&tabke_name&from&user_all_tables&a&where&a.num_rows&1000000;
--user_all_tables为系统提供的数据视图,使用者可以通过查询该视图获得当前用户表中描述。
事务控制语言TCL:
1)commit:提交事务,提事务中对数据库的修改进行永久保存。
2)rollback:回滚事务,即取消对数据库所做的作何修改。
3)savepoint&&savepoint_name&:在事务中创建存储点。
4)rollback&to&savepoint&&savepoint_name&:将事务回滚到存储点。即savepoint&创建的存储点
开启事务:在Oracle中,上一次事务结束以后,数据第一次被修改时自动开启。
结束事务: ①数据被提交:发出commit命令;执行DDL或DCL语句后,当前事务自动与Oracle分离。
②数据被撤销:发出rollback命令;服务器进程异常结束;DBA停止会话。
例: insert&into&dept&values&(10,&ACCOUNTING&,&NEW&YORK&);
savepoint&a;//a只是一个名称
insert&into&dept&values&(20,&SALES&,&NEW&YORK&);
rollback&to&savepoint&a;
--结果只有第一条记录插入成功
数据控制语言DCL:
数据控制语言为用户提供权限控制命令。数据库对象(如表)的所有者对这些对象拥有控制权限。所有者可以根据自己
的意愿决定其他用户如何访问对象,授予其他用户权限(insert,select,update,delete,....)
SQL操作符:
1.算术操作符。算术表达式由number数据类型的列名、数值常量和连接它们的算术操作符组成。
+(加)、-(减)、*(乘)、/(除)。
2.比较操作符:=、!=、&、&=、&、&=、between..&and&、in、not&in、like、is&null、is&not&null。
Oracle中的between-and语句,包含前也包含后。如:rn&between&5&and&9;结果是5,6,7,8,9
3.逻辑操作符:and&,&or&,&not。
4.集合操作符,将多个查询的结果组合成一个结果集。
规则: 1)通过集合操作符连接的条个查询具有相同的列数,且对应列的数据类型必须兼容。
2)这种查询不应含有long类型的列。列标题来自第一个select语句。
union&(并集)操作符返回两个查询选定的所有不重复的行。使用order&by&子句时,必须放在最后一个select后。
select&empno&from&employee
select&rempno&from&retireEmp
union&all&(并集all)操作符合并两个查询选定的所有行。包括重复的行。
intersect&(交集)操作符返回两个查询都有的行。
select&empno&from&employee
select&rempno&from&retireE
minus&(减集)操作符只返回由第一个查询选定而未被第二个查询选定的行,即在第一个查询结果中排除在第二个查询
结果中出现的行。
select&empno&from&employee
select&rempno&from&retireE
5.连接操作符(||),用于将两个或多个字符串合并成一个字符串,或者将一个字符串与一个数值合并在一起。
select&job||&&&||ename&from&--输出的时候将岗位和姓名连接在一起输出。
SQL函数:大致分为单行函数、聚合函数、分析函数。
单行函数:字符函数、日期函数、数字函数、转换函数及其他函数。
聚合函数(Aggregate&Function)也称为分组函数是基于数据库表的多行进行运算,返回一个结果。
分析函数是对一个查询结果中的每个分组进行运算,但每个分组对应的结果可以有多个。
字符函数:操作结果可能是字符数据类型,也可能是数字类型。
initcap(char)
首字母大写
initcap(&hello&)
lower(char)
转换为小写
lower(&FUN&)
upper(char)
转换为大写
upper(&sun&)
ltrim(char,set)
ltrim(&xyzadams&,&xyz&)
rtrim(char,set)
rtaim(&xyzadams&,&ams&)
translate(char,from,to)
按字符翻译
translate(&Jack&,&abcd&,&1234&)
replace(char,search_str,
replace_str)
字符串替换
replace(&jack&and&jue&,&j&,&bl&)
black&and&blue
instr(char,substr[.pos])
查找子串位置
instr(&worldwide&,&d&)
substr(char,pos,len)
取子字符串,下标从1开始
substr(&abcdefg&,3,2)
concat(char1,char2)
连接字符串
concat(&Hello&,&world&)
Helloworld
数字函数,接受数字输入并返回数字作为输出结果,返回的值可以精确到小数点后38位。
ceil(44.178)
floor(44.99)
round(m,n)
round(100.256,2)
trunc(m,n)
trunk(100.256,2)
100.25(小数后几位?)
sin(1.571)
power(m,n)
power(4,2)
取m%n的结果
1&(Oracle中没有%运算符)
日期函数,对日期值进行运算,根据函数的用途产生日期数据类型或数值类型的结果。
返回当前日期和时间
select&sysdate&from&
当前日期和时间
systimestamp
返回当前日期、时间、时区
select&systimestamp&from
当前日期、时间
months_between(
prevdate,nextdate)
返回两个日期间的月份
months_between(&04-11月
-05&,&11-1月-01&)
57.7741935
add_months
返回把月份数加到日期上的新日期
add_months(&06-2月-03&,1)
add_months(&06-2月-03&,1)
返回指定日期后的星期对应的新日期
next_day(&06-2月-3&,&星期一&)
返回指定日期所在月的最后一天
last_day(&06-2月-03&)
按指定格式对日期进行四舍五入
对年份四舍五入,日期&6月30日,则
round(to_date(&13-2月-03&),&YEAR&)
round(to_date(&13-2月-03&),&MONTH&)
round(to_date(&13-2月-03&),&DAY&)
对日期按指定方式进行截断
trunc(to_date(&06-2月-03&),&YEAR&)
trunc(to_date(&06-2月-03&),&MONTH&)
trunc(to_date(&06-2月-03&),&DAY&)
extract(year&
from&date)
返回date中的年份,也可以是month
extract(year&from&sysdate)
转换函数,将值从一种数据类型转换为另一种数据类型。Oracle中没有convert函数。
转换成指定字符串类型
to_char(123.45,&$9999.9&)&(只有$符号可以)
转换成指定日期类型
to_date(&&,&yyyy-mm-dd&)
转换成指定数值类型
to_number(&1234.5&)
数字:1234.5
to_char()的语法为:
to_char(d|n[,fmt]);--其中d是日期,n是数字,fmt是指定日期或数字的格式&。转换成的是varchar2数据类型
例: select&to_char(sysdate,&YYYY&年&fmMM&月&fmDD&日&&HH24:MI:SS&)&from&
--使用了填充模式&fm&格式掩码来避免空格填充和数字零填充
--格式中的小数有多少位,结果就会四舍五入进多少位。
to_date()的语法为:
to_date(char[,fmt]);--将char或varchar数据类型转换为日期数据类型。fmt指定字符的形式。
--这里的fmt是指定Oracle服务器该如果解析这个char字符串的格式,返回的结果统一是:yyyy-mm-
select&to_date(&&,&yyyy-mm-dd&)&from&--结果:18-7月-13
--这Oracle中mm是月份,mi是分种数
to_number()函数将包含数字的字符串转换为number数据类型。通常不必这样做,因为Oracle可以对数字字符串进行隐
select&sqrt(to_number(&100&))&from&--结果:10
其他函数,除去已介绍函数还不其他一些单行函数,在此称为其他函数。
nvl(exp1,exp2)
如果exp1的值为null,则返回exp2的值,否则返回exp1的值
nvl2(exp1,exp2,exp3)
如果exp1的值为null,则返回exp2的值,否则返回exp3的值
decode(value,if1,then1
,if2,then2,...,else
如果value的值为if1,则返回then1的值;如果value的值为if2,则返回then2的值
,....&否则返回else的值
例: select&ename,
&&&&&&&sal+nvl(comm,0)&sal1,
&&&&&&&nvl2(comm,sal+comm,sal)&sal2,
&&&&&&&decode(to_char(hiredate,'MM'),'01','一月','02','二月','03','三月','04','四月','05'
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&,'五月','06','六月','下半年')&mon
  &from&
聚合函数:能基于列进行计算,将多个直合并为一个值。对一组值进行计算,并返回计算后的值。
使用聚合函数进行统计值时,将忽略NULL值,但不忽略重复项。
1.sun(),返回表达式中所有数值的总和,只能用于数字列,只能返回一个数值,不能够直接与可能返回多行的列一起 使用来进行查询。
例:select&sun(score)&from&result&where&studentid=33&--查询学号为33的学生的成绩总和
2.avg(),返回表达式中所有数值的平均值,只能用于数值列。
例:select&avg(score) from&result&where&score&=60&--查询及格的平均值。
3.max()和min():max()返回表达式中的最大值,min()返回表达式中的最小值,它们都可以用于数字型,字符型以及 日期/时间类型的列。
例:select&avg(score),max(score),min(score)&from&result&where&score&=60
--查询及格线上的平均分、最高分、最低分
4.count(),返回提供的组成或记录龄中的计数。可以用于数字和字符类型的列,也可以使用星号&*&作为count()的 表达式。
例:select&count(*)&from&score&where&score&=60 --查询及格人数的语句&
也可以使用整数类型的值当作表达式,如:
select&count(1000)&from&score&where&score&=60&&--结果将和上面的一样
小提示:count(distinct&表达式),遇到重复数据,只记录一次
分析函数:Oracle从8.1.6版本开始提供分析函数。分析函数是对一组查询结果进行运算,然后获行结果。与聚合函数的区别在于返回多行,聚合函数每组返回一行。用于对分组后组内进行排序。
函数名([参数])&over&([分区子句][排序子句]);--分区子句(partition&by)表示将查询结果分为不同的组,功能
类似于group&by语句。默认将所有结果作为一个分组。排序子句(order&by)默认是asc升序。
rank、dense_rank、row_number函数用于为每条记录产生一个从1开始至N的自然数,N的值可能小于记录的总数。这
3个函数用于解决排名问题。
1)row_number函数返回一个唯一的值,当遇到相同数据时,排名按照记录集中记录的顺序依次递增。
2)dense_rank函数返回一个唯一的值,当遇到相同数据时,所有相同数据的排名都是一样的。
3)rank函数返回一个唯一的值,当遇到相同的数据时,所有相同数据的排名是一样的,同时会在最后一条相同记录和
下一条不同记录的排名之间空出排名。
例:select&ename,deptno,sal,
&&&&&&&rank()&over&(partition&by&deptno&order&by&sal&desc)&rank,
&&&&&&&dense_rank()&over&(partition&by&deptno&order&by&sal&desc)&"dense_rank",
&&&&&&&row_number()&over&(partition&by&deptno&order&by&sal&desc)&"row_number"
阅读(...) 评论()Oracle中清除BIN$开头的垃圾表的解决办法 [转]
时间: 13:37:07
&&&& 阅读:144
&&&& 评论:
&&&& 收藏:0
标签:&&&&&&&&&&&&&&&&&&&&&&&&&&&
10g的新特性flashback闪回区
& & 在10g中bin开头表示已经删除的放在回收站的表,oracle在删除表时并没有彻底的删除,而是把表放入回收站!purge recyclebin清空回收站即可。
★recyclebin字典★
当误删除某些表时,可以通过命令恢复回来:
&flashback table table_name to before drop;
&查看是否开启了闪回功能:
&select flashback_on from v$
&如果确定某些表确实可以删除,可以使用下面的语句,就不会出现BIN$开头的表了
&drop table table_
删除Bin开头的表,即已经drop但存在于回收站中的表:
查询所有此类表
SQL& select * from recyclebin where type=‘TABLE‘;
用来删除回收站中所有的表
SQL& PURGE RECYCLEBIN & & -------这语句就能清除所有以BIN开头的残留文件
&用来删除指定的表
SQL& PURGE TABLE TABLE_NAME
&用来闪回被删除的表
SQL& FLASHBACK TABLE table_name TO BEFORE DROP;
可以在的Drop表时不产生Bin型表
SQL& DROP TABLE "TableName" purge;
设置falshback功能的开启和关闭
&SQL&startup mount
&SQL&alter database flashback on(off)
标签:&&&&&&&&&&&&&&&&&&&&&&&&&&&原文:http://www.cnblogs.com/songjinduo/p/5206642.html
教程昨日排行
&&国之画&&&& &&&&&&
&& &&&&&&&&&&&&&&
鲁ICP备号-4
打开技术之扣,分享程序人生!为什么很多Linux用户对Oracle深恶痛绝?
发表于 14:13|
来源ITWorld|
作者Jim Lynch
摘要:目前的开源团队中,很多Linux用户不喜欢而且不信任Oracle。下面主要从两个方面进行阐述:慕尼黑政府可能以后都不会抛弃Linux系统了;如何在Linux系统中加密邮件?
日,上午9时33分——从某种程度上说,Oracle 与某些开源团队的联系还算紧密,甚至说走的很近。但&Oracle&公司从来没有羞于做一切必要的努力赚钱,即使这些努力可能导致最终与开源团队决裂。Reddit 的一个用户发帖问为何这么多 Linux 用户不喜欢 Oracle,得到的回答是一大堆抱怨声。 上写道:大家好!我注意到事情已经变得不那么厚道了,所以我也想给Oracle抹黑。但是我发现不能非常准确的说出为什么Oracle是一堆垃圾。我考虑的仅仅是Oracle毁灭了Sun遗留的东西,如果能有其他的错误信息清单,或者历史错误就更好了。你有什么例子可以分享吗?我非常想把潜意识里的黑暗想法变成现实!这个话题出现在 Reddit 上非常有意思。2010年我就开始抨击Oracle。和很多人一样,我不是Oracle的粉丝,但是他们的行为激怒了我。我明白了为什么那么多人也不喜欢Oracle。真正将Oracle置于风口浪尖的是一个在 Reddit 最佳列表顶端发表消息的人。这里只列举了他的消息的一小部分,可以从 Reddit 上获得他列举的 Oracle 的九大罪状:基本上,Larry Ellison看起来像是一个贪婪的敛财公司的主管,经常在周末和Verizon(一个无线运营商)、Comcast(美国最大的有线系统公司)的CEO们闲逛,还分享他们是如何用劣质的产品和服务向用户多收钱的。他讨厌所以免费的东西,他的这种观点弥漫在整个公司,并在公司产生了很大的影响。我没有可靠的证据来指责他,但是他那个自私的公司绝对是软件时代的一个寄生虫。哎呦!看起来Oracle 确实变成了很多Linux 爱好者最讨厌的公司之一了。如果要说&Microsoft&和Oracle &哪个在开源世界中更不受欢迎的话,我想应该是Oracle。慕尼黑政府可能不会再使用Windows了之前网络盛传慕尼黑政府要放弃Linux,重新用回Windows。目前,Tech Republic说这个消息不是真的。&写到:是采用版本不断更新的开源系统对政府更有利,还是使用微软的系统对政府更有利?尽管外界有很多反面的报道,但是政府依然坚持。技术部门发言人Stefan Hauf 提到,建议政府放弃Linux是错误的。他提到该市新任命的市长Dieter Reiter,没有采用简单的委任报告的形式,而是使用了IT系统。新市长让行政机构收集了大量事实,然后就可以在此基础上提出日后的改进和发展目标。昨天我看到很多关于慕尼黑政府的报道,我想阻止这些消息的散播。我很庆幸我没有被这些报道误导。坦白说,我并不惊讶一些网站借此机会诋毁、打击Linux。我们可以把这类事情归类为微不足道的兴风作浪。但是,事情很快就向另一个方向发展了。不幸的是,慕尼黑事件过去后,仍然有些新闻工作者诋毁Linux。对一些网站来说,见风使舵的来贬低Linux 绝对是一件简单的事,并且还能赚取可观的广告收益。如何在Linux上加密邮件Linux.com网站上有 Carla Schroder 提供的教程,指导你如何在Linux上加密邮件。依据Linux.com&网站的提供的信息:如果你想加密邮件,想想就是一件让人迷惑的事,多亏有各种邮件服务器和邮件客户端可以帮我们做这件事。目前认为是有两级加密:SSL/TLS加密将你登陆的用户名和密码保存到邮件服务器上。GnuPG是Linux上非常强大的加密工具,负责邮件加密和验证。最好是自己维护一个GPG加密工具,而不是使用第三方的,这一点我们会在后面讨论。由于消息头使用的是明码,还是给流量分析留下了易攻击点。因此,使用类似Tor网络的工具来隐藏你在互联网上的足迹是很有必要的。下面就来看一下各种邮件服务器和客户端的缺陷和优势。如果你需要一个Linux上的邮件应用,可以在Muktware上的邮件客户端中找找,也可以查看一下MakeUseOf的邮件客户端比较总结,其中包括了Thunderbird,Evolution,KMail 和 Claws Mail。Linux Links上有42个邮件应用,分成以下几类:Clients - GraphicalClients - ConsoleClients - Web BasedGroupwareEmail ServerUtilitiesSecurityMail filteringNotificationMailing List Manager如果你只想用一个邮件客户端,列表里的很多东西你可能用不到,但是其他人可能可以从中找到需要的东西。(英文来自:,译者AlinaLv1985,各位亲,想要赢取积分和礼物,赶快来参与CSDN CODE翻译任务吧,猛戳&&哦!)
推荐阅读相关主题:
CSDN官方微信
扫描二维码,向CSDN吐槽
微信号:CSDNnews
相关热门文章

我要回帖

更多关于 怎样避免产生垃圾 的文章

 

随机推荐