当前位置:  数据库>其它
本页文章导读:
    ▪Linux 文件系统管理之二      管理文件权限 格式1:chmod [-R] {[ugoa][+-=][rwxst]} 文件名或目录名 格式2:chmod [-R] {[ugoa][+-=][ugo]} 文件名或目录名 说明 -R 如果操作对象为目录,则递归地对该目录下的所有子目录.........
    ▪MySQL 线上服务器架构调整记事(零)      在开始这个系列文章之前,我先介绍一下该线上系统的用途以及MySQL服务器的架构。 一、线上系统介绍 该系统是一个面向律师事务所、会计师事务所(德勤)、大型企业(如IBM,GM)、高校(.........
    ▪SQLPlus环境设置      一、替换变量 二、SET命令 三、格式控制命令 四、配置环境脚本 ************************************           替换变量 ************************************ 一、替换变量 1.当我们在SQL*P.........

[1]Linux 文件系统管理之二
    来源: 互联网  发布时间: 2013-11-07
管理文件权限
格式1:chmod [-R] {[ugoa][+-=][rwxst]} 文件名或目录名
格式2:chmod [-R] {[ugoa][+-=][ugo]} 文件名或目录名


说明
-R 如果操作对象为目录,则递归地对该目录下的所有子目录实施权限设置
{}内的内容称为一个模式,可以指定多个模式,多个模式之间用逗号分隔


第一个选项表示要赋予权限的用户
u 表示属主 user
g 表示属组 group
o 表示其他用户 other
a 表示所有用户 all


第二个选项表示要进行的操作
+ 表示增加权限
- 表示删除权限
= 表示分配权限,同时将原有权限删除


第三个选项是要分配的权限


r 读取
w 写入
x 执行


示例:


chmod go-r testfile
chmod u+x  testfile
chmod u-x,go+r tesffile


将属组权限设置为与属主相同


chmod g=u testfile


对其他用户添加属主具有的权限


chmod o+u testfile




通过数值设定权限
权限 二 八
--- 000 0 没有权限
--x 001 1 允许执行
-w- 010 2 允许写入
-wx 011 3 允许执行和写入
r-- 100 4 允许读取
r-x 101 5 允许执行和读取
rw- 110 6 允许写入和读取
rwx 111 7 允许执行写入和读取


chmod -R 775 /u01
chmod 660 /u01




文件的属主和属组
chown


chown [-R] <用户[:组]> <文件或目录>


-R 如果操作对象是目录,则递归地对该目录下所有子目录实施目录设置,要单独修改属组,可以使用下面
的格式:
chown [-R] <:属组> <文件或目录>


切换为超级用户


su - 
将文件 testfile 的属主 修改为 oracle




[test@asm ~]$ mkdir maomi
[test@asm ~]$ ls -lt
total 4
drwxrwxr-x 2 test test 4096 Feb 14 17:05 maomi
[test@asm ~]$ su - root
Password: 
[root@asm ~]# chown -R oracle:oinstall /home/test/maomi




[test@asm ~]$ ls -lt
total 4
drwxrwxr-x 2 oracle oinstall 4096 Feb 14 17:05 maomi


chown :oinstall testfile


chown oracle:oinstall testfile


chown -R oracle:oinstall /u01






umask 
用户可以使用 umask 命令设置文件的缺省生成掩码。缺省的生成掩码可以告诉系统在创建文件或目录时不应赋予其哪些权限。如果用户将 umask 命令放在环境配置文件 .bash_profile 中就可以控制所有新建的文件或目录的访问权限


umask 命令的格式为:
umask [u1u2u3]


其中 u1 表示不允许属主拥有的权限;u2 表示的是不允许同组用户拥有的权限;u3表示的是不允许其他用户拥有的权限
可以使用不带任何参数或带-S 参数的命令来查看当前文件的缺省生成掩码:
[test@asm ~]$ umask
0002
[test@asm ~]$ su - oracle
Password: 
[oracle@asm ~]$ umask
0022
[oracle@asm ~]$ umask -S
u=rwx,g=rx,o=rx




[oracle@asm ~]$ umask -S
u=rwx,g=rx,o=rx
[oracle@asm ~]$ mkdir maomi
[oracle@asm ~]$ ls -l maomi
total 0
[oracle@asm ~]$ ls -l | grep maomi
drwxr-xr-x 2 oracle oinstall 4096 Feb 14 17:15 maomi


转载请注明出处及原文链接,拒绝盗转



作者:xiangsir 发表于2013-2-18 10:01:04 原文链接
阅读:0 评论:0 查看评论

    
[2]MySQL 线上服务器架构调整记事(零)
    来源: 互联网  发布时间: 2013-11-07

在开始这个系列文章之前,我先介绍一下该线上系统的用途以及MySQL服务器的架构。


一、线上系统介绍

该系统是一个面向律师事务所、会计师事务所(德勤)、大型企业(如IBM,GM)、高校(浙大)以及个人提供大陆地区法规、案例及相关新闻评论的信息检索及浏览系统,主要提供信息检索、订阅及在线浏览服务。

系统使用主要PHP语言开发,数据分析及处理部分使用Java和Python;

此外数据检索使用了HP的“绯闻”不少的Autonomy以及Sphinx;

除此之外系统还使用了Smarty,Jquery和ExtJS;


二、MySQL服务器架构

两台性能较好内存较大的数据库做Master-Master,使用MySQL mmm做管理及监控(监控另外还用了Nagios,Zabbix),其中一台数据库M1用作前台的DML操作,另外一台数据库M2用作CMS录入数据使用。

此外有两台Slave,其中S1用于搜索引擎(Autonomy和Sphinx)fetch数据使用,另外一台Slave数据库S2用于数据分析、数据处理及数据备份;

总体上来说,运行稳定,偶尔出现过的复制Duplicate key也是由于代码写的有问题导致的。


但是,随着用户访问量及数据量从去年10月份开始暴涨,数据库的performance正逐渐成为整个系统的主要性能瓶颈;所以老板决定了——加机器,做读写分离

鉴于代码比较乱,在代码层引入读写分离及load balance的成本较大,所以我们考虑使用Proxy工具来实现;

主要的两个选择是:1.MySQL proxy;2.Amoeba;两个工具目前都没找到线上使用实例(如果您知道的话,烦请告知一下,不胜感激!!)


虽然从文档、维护等各方面考虑最后决定使用MySQL proxy,但是因为MySQL proxy仍然处于alpha 0.8.3版本,而且MySQL手册上的“MySQL Proxy is currently an Alpha release and should not be used within production environments”却使得我一直很忐忑。

但路是人走出来了,硬着头皮上了


待续....

作者:mingzhou 发表于2013-2-19 17:02:29 原文链接
阅读:7 评论:0 查看评论

    
[3]SQLPlus环境设置
    来源: 互联网  发布时间: 2013-11-07
一、替换变量
二、SET命令
三、格式控制命令
四、配置环境脚本


************************************
          替换变量
************************************
一、替换变量
1.当我们在SQL*Plus中执行命令时,可以使用替换变量,让用户每次执行语句前,为语句传送不同的数据。例如:
gyj@OCM> select * from t1 where id=&id;
Enter value for id: 1            --Oracle首先让我们输入id的值,此处输入1
old   1: select * from t1 where id=&id
new   1: select * from t1 where id=1

  ID NAME
---------- ----------
         1 gyj1
在你输入值后,Oracle将&id换为你所输入的值,然后,按你所输入的值执行。这就是替换变量。同样的一条语句,你可以每次输入不同的值,返回的就是不同的结果。其实替换变量类似于编程语言中的变量的简单形式。


2.一条语句中,可以有多个替换变量,而且,一条语句中,除了开头第一个单词,语句中的任何一部分,都可以是替换变量。比如:
gyj@OCM> select * from t1 where &a &b &c;
Enter value for a: id
Enter value for b: =
Enter value for c: 1
old   1: select * from t1 where &a &b &c
new   1: select * from t1 where id = 1

  ID NAME
---------- ----------
         1 gyj1
(显示结果和上面一样)


3.除了语句的第一个单词外,我甚至可以将整个语句,都定为替换变量:
gyj@OCM> select &a &b &c &d &e &f &g;
Enter value for a: *
Enter value for b: from 
Enter value for c: t1
Enter value for d: where
Enter value for e: id
Enter value for f: =
Enter value for g: 1
old   1: select &a &b &c &d &e &f &g
new   1: select * from  t1 where id = 1

  ID NAME
---------- ----------
         1 gyj1
注意,SELECT一定不可以是替换变量。语句中第一个单词不可以是替换变量,其他部分都可以。因此替换变量的使用是非常灵活的。


4.对于字符型的数据,要注意单引号的问题,我想显示姓名等于某个人的行,可以使用如下语句:
gyj@OCM> select * from t1 where name='&n';
Enter value for n: gyj1
old   1: select * from t1 where name='&n'
new   1: select * from t1 where name='gyj1'

  ID NAME
---------- ----------
         1 gyj1
注意:我在’&n’外加的有单引号,那么,我在为n输入值时,就不必再gyj1的外面,加单引号。


如果&n的外面,我没有加单引号的话,如下:
gyj@OCM> select * from t1 where name=&n;
Enter value for n: 'gyj1'
old   1: select * from t1 where name=&n
new   1: select * from t1 where name='gyj1'

   ID NAME
---------- ----------
         1 gyj1
(显示结果同上)
 注意: &n外面没有单引号,那么在输入gyj1时,就要在gyj1之外,加单引号。


二、替换变量的定义和取消
我们可以使用define  变量 = 值 ,事先定义替换变量。如SQL> define a=1 ,这条语句后面可以加“;”,也可以不加“;”号。
定义变量后,可以在任何地方通过&a来引用变量,如:
gyj@OCM> define a=1
gyj@OCM> select * from t1 where id=&a;
old   1: select * from t1 where id=&a
new   1: select * from t1 where id=1

   ID NAME
---------- ----------
         1 gyj1
和以前使用替换变量相比,少了“输入 a 的值: ”,这次,a的值在前面已经用define定义过了,不必再输入。
变量a可以返复使用,直到使用undefine  变量 命令取消它。下面试一下。
我先用如下语句输出a的值:
gyj@OCM> select &a from dual;
old   1: select &a from dual
new   1: select 1 from dual

  1
----------
         1
a的值目前还存在。在使用时,不须先为a输入值。下面我取消a。
SQL> undefine a
取消之后,我再次执行和上面同样的命令,输出a的值:
gyj@OCM> undefine a
gyj@OCM> select &a from dual;
Enter value for a:   
(这次要求我输入a的值了,因为a已经被取消)
  还一点要说明一下,就是替换变量只针对一个会话,在A会话中定义的值的变量,在B会话访问不到它的值。下面我们试一下:
在会话1:SQL> define a=1
在会话1:SQL> select &a from dual;
old   1: select &a from dual
new   1: select 1 from dual

  1
----------
         1
已经可以使用变量a了。下面换到会话2:
在会话2:SQL> select &a from dual;
输入 a 的值:(要求你重新为a输入值,在会话1中为变量定义的值,在会话2中访问不到)


三、“&&”与替换变量:
 一个“&”(念and)号的替换变量,如果以前没有Define定义过。在本次使用完后,将自动取消。而双“&&”号的替换变量,在本次使用完后,输入的值将一直保持,直到用Undefine取消为止。测试如下:
gyj@OCM> select &&a from dual;
Enter value for a: 1  
old   1: select &&a from dual
new   1: select 1 from dual

  1
----------
         1
第一次为&&a输入值为1,再次显示a的值,无论是select &&a from dual;  还是select &a from dual; 都不需要再为a输入值。直到undefine。


四、SET  VERIFY  ON | OFF 
在替换变量使用过程中,每次都会显示一个“原值”,然后显示被命令替换成了“新值”,使用SET VERIFY,可以打开或关闭这个提示信息。默认状态是打开。我把它关闭看看效果:
SQL> set verify off
 说明一下,普通的命令,在结尾处都应有一个“;”分号,而Define、Undefine和SET开头的命令,这些命令专门针对SQL*Plus,在其他环境中不能使用。这些专属于SQL*Plus的命令,不必在结尾处加分号。当然如果结尾加分号了,也不会报错。
 我已经把SET VERIFY设为了OFF,再使用一次a变量:
gyj@OCM> set verify off
gyj@OCM> select &a from dual;

  1
----------
         1
果然,没有了“原值”,“新值”这样的提示信息。像SET VERIFY这样的用来设置SQL*Plus状态的命令,还有很多,我们下面介绍。




*************************************
            SET命令
*************************************
一、SET和SHOW命令
在SQL*Plus中,有一些状态变量,控制一些命令的输出格式,例如,VERIFY就是一个状态变量。它控制在使用替换变量时,是否显示的替换有关的提示性信息。我们可以使用SET命令,可以针对某一会话,设置SQL*Plus的状态变量。改变的状态只针对发出SET命令的会话,对其他会话没有任何的影响。使用SHOW命令,可以显示状态变量当前的取值。例如:
gyj@OCM> show verify
verify OFF
我显示了VERIFY状态变量的当前值,它的值是OFF。除了VERIFY之外,我们再说几个比较常用的状态变量。


二、FEEDBACK 回馈信息
gyj@OCM> show FEEDBACK;
FEEDBACK ON for 6 or more rows
gyj@OCM> select * from t1;

 ID NAME
---------- ----------
         2 gyj2
         3 gyj3
         4 gyj4
         5 gyj5
         6 gyj6
         1 gyj1

6 rows selected.
最后有个“已选择6行”,这个信息,被称为回馈信息。而FEEDBACK,就是针对这个信息的。它的初始值是6。就是当你显示出来的行数大于等6时,才会显示这个回信息。
下面我显示一个5行的表:
gyj@OCM> delete from t1 where id=6;

1 row deleted.

gyj@OCM> commit;

Commit complete.

gyj@OCM> select * from t1;

 ID NAME
---------- ----------
         2 gyj2
         3 gyj3
         4 gyj4
         5 gyj5
         1 gyj1
没有回馈信息。因为显示的行数没有达到要求的6。
下面我们把这个状态变量设制的小
    
最新技术文章:
▪gc buffer busy/gcs log flush sync与log file sync    ▪让你的PL/SQL更好用    ▪ADO.NET中的非脱机数据库查询
▪参数job_queue_processes与Oracle jobs    ▪11gR2游标共享新特性带来的一些问题以及_cursor...    ▪_library_cache_advice和latch:shared pool、latch:shared poo...
▪SQL: Date Utility    ▪DB2 分区表增加分区    ▪DB2第一步 — 创建表
▪oracle 数据库    ▪插入10万条记录测试    ▪rebuild index VS. rebuild index online
▪如何处理undo tablespace 表空间太大的问题    ▪ado执行存储过程中包含结果集获取输出参数为...    ▪oracle函数的demo
▪Entity Framework 学习建议及自学资源    ▪存储过程的编写    ▪Linux/Unix shell 自动发送AWR report(二)
▪第二章 Oracle恢复内部原理(基础数据结构)    ▪Redis源码学习之【Tcp Socket封装】    ▪Java Jdbc减少与Oracle之间交互提升批量处理性能...
▪南大通用GBase8a Vs Oracle11g 单机测试亲测    ▪oracle 中行列转换    ▪rhel下安装oracle10g+asm---测试环境搭建
▪Redis系列-主从复制配置    ▪MySQL索引与查询优化    ▪INDEX受到NULL值的影响
▪测试人员的SQL语言 系列    ▪SQL数据库基本语句    ▪MySQL Replication常见错误整理[持续更新...]
▪eclipse下建立esper的demo    ▪把oracle rac 转化为单机数据库    ▪Redis系列-存储篇sorted set主要操作函数小结
▪基本的SQL*Plus报表和命令    ▪druid简单教程    ▪11g调度--scheduler使用
▪EF基础一    ▪db2存储过程中循环语句while do的continue有没有...    ▪oracle 创建DBLINK
▪DBCA建库偶遇ORA-27125    ▪使用PowerPivot建立简单的分析模型    ▪Linux/Unix shell 自动发送AWR report iis7站长之家
▪数据迁移:DataGuard配置    ▪QX项目实战-19.跨库数据同步    ▪Mysql EXPLAIN
▪Oracle 11g AWR 系列七:Active Session History (ASH) 报...    ▪Oracle 11G新特性(共36个)    ▪父子节点问题
▪OEM简介及按钮乱码问题    ▪NoSql之MongoDB的常用类管理    ▪ORA-39700: database must be opened with UPGRADE option
▪node.js 访问redis数据库,pub/sub    ▪使用DBMS_REDEFINITION在线重定义分区表    ▪SQL Developer 使用问题与解决方法汇总
▪oralce 11g dataguard 概念    ▪ORA-30004 错误处理    ▪oracle分组函数rollup,cube
▪Sql Developer 使用问题与解决方法汇总    ▪Configure Oracle Dataguard Primary-ASM to Physical-ASM    ▪Oracle Data Guard 理论知识
▪Control File 恢复    ▪Oracle数据文件收缩    ▪Oracle 11g AWR 系列五:如何生成 AWR 报告?
▪Wireshark数据包分析实战(第2版)    ▪MySql用户权限控制    ▪db2和oracle查询序列区别
▪更新blob字段的存储过程    ▪MySQLReport分析报告三    ▪DB2中的序列
▪Oracle中DBMS_RANDOM.STRING 的用法    ▪SQL SERVER无法安装成功,sqlstp.log文件提示[未发...    ▪Data Guard 部署物理备库的 10 大注意事项
▪万能数据库查询分析器使用技巧之(九)    ▪SQL 自定义Split函数    ▪视图 v$sql,v$sqlarea,$sqltext,v$sqltext_with_newlines 的...
▪Data Guard Standby_archive_dest 和 Log_archive_dest_n 的...    ▪机房收费系统数据库设计(一)    ▪利用putty的SSH tunnel连接Oracle
▪DBCA建库偶遇ORA-27125    ▪使用PowerPivot建立简单的分析模型    ▪Linux/Unix shell 自动发送AWR report
▪写入到blob字段的存储过程    ▪关于JDBC中ResultSet接口的一点细节探究    ▪Data Guard 配置 Standby Redo Log
▪linux下redis的安装    ▪windows下redis的安装    ▪手动创建数据库步骤(简单翻译官方文档)
▪Ubuntu安装Mongodb    ▪SQL CLR应用    ▪redis的配置文件参数--详细说明
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

浙ICP备11055608号-3