今天突然接到短信报警,提示我的备份没有成功.....
怎么可能阿!!!!
登上服务器一看,备份系统创建LVM 快照时出现了错误,提示:
于是查看问题:
[root@backup /]# vdisplay
--- Physical volume ---
PV Name /dev/sda2
VG Name VolGroup01
PV Size 558.27 GB / not usable 24.40 MB
......
......
Free PE 0
Allocated PE 17864
PV UUID vZilnx-xc6i-0zuE-O5Uf-bFYh-Tgnj-HtpVqU
没空间了?
[root@backup /]# vgs -o +vg_free_count,vg_extent_count
VG #PV #LV #SN Attr VSize VFree Free #Ext
VolGroup01 1 3 0 wz--n- 558.25G 0 0 17864
郁闷?
注意:我的LVM上是通过建立LVM快照备份的
所以出现上面的错误(Insufficient Free Extents for a Logical Volume)是正常的.
问题点找到了,剩下的就是添加硬盘了
* 使用一个物理磁盘创建一个分区。建议将分区类型改为 0x8e(Linux LVM)使用 pvcreate 对物理磁盘进行初始化:pvcreate /dev/hda8。
* 然后,使用 vgextend 将它添加到现有的 VG 中:vgextend VolGroup01 /dev/hda8。
Note:
因为我只想增加VG的大小,以便能使用快照.至于PV的扩充,不再我的考虑范围内.
参考:
扩展PV,可以使用 lvextend 扩展逻辑卷了:lvextend -L 8G /dev/VolGroup01/data。这个命令将 /dev/VolGroup01/data LV 的大小扩展到 8GB。
lvextend 有一些有用的参数:
* 如果希望让 LV 增加 5GB,那么可以使用 -L +5G。
* 可以指定扩展部分的位置(也就是,用哪些 PV 提供新的空间);只需将希望使用的 PV 附加在命令后面。
* 还可以以 PE 为单位指定绝对/相对扩展大
怎么可能阿!!!!登上服务器一看,备份系统创建LVM 快照时出现了错误,提示:
引用
Insufficient Free Extents for a Logical Volume
于是查看问题:
[root@backup /]# vdisplay
--- Physical volume ---
PV Name /dev/sda2
VG Name VolGroup01
PV Size 558.27 GB / not usable 24.40 MB
......
......
Free PE 0
Allocated PE 17864
PV UUID vZilnx-xc6i-0zuE-O5Uf-bFYh-Tgnj-HtpVqU
没空间了?
[root@backup /]# vgs -o +vg_free_count,vg_extent_count
VG #PV #LV #SN Attr VSize VFree Free #Ext
VolGroup01 1 3 0 wz--n- 558.25G 0 0 17864
郁闷?
注意:我的LVM上是通过建立LVM快照备份的
所以出现上面的错误(Insufficient Free Extents for a Logical Volume)是正常的.
问题点找到了,剩下的就是添加硬盘了
* 使用一个物理磁盘创建一个分区。建议将分区类型改为 0x8e(Linux LVM)使用 pvcreate 对物理磁盘进行初始化:pvcreate /dev/hda8。
* 然后,使用 vgextend 将它添加到现有的 VG 中:vgextend VolGroup01 /dev/hda8。
引用
Note:
因为我只想增加VG的大小,以便能使用快照.至于PV的扩充,不再我的考虑范围内.
参考:
扩展PV,可以使用 lvextend 扩展逻辑卷了:lvextend -L 8G /dev/VolGroup01/data。这个命令将 /dev/VolGroup01/data LV 的大小扩展到 8GB。
lvextend 有一些有用的参数:
* 如果希望让 LV 增加 5GB,那么可以使用 -L +5G。
* 可以指定扩展部分的位置(也就是,用哪些 PV 提供新的空间);只需将希望使用的 PV 附加在命令后面。
* 还可以以 PE 为单位指定绝对/相对扩展大
mysql4 通过mysql5认证
[
2010/07/19 14:23 | by 张明辉 ]
2010/07/19 14:23 | by 张明辉 ]
因为线上存在mysql版本的差异,因此经常需要mysql4从mysql5 server 上认证去拿资料
因此需要在mysql5上授权mysql4客户端。
方法如下:
mysql> GRANT SELECT ON somedatabase.sometables TO 'some_user'@'some_hosts' identified by 'password';
mysql> update mysql.user set PassWord = OLD_PASSWORD('newpassword')
-> where Host = 'some_host' and user = 'some_user';
mysql> flush privileges;
因此需要在mysql5上授权mysql4客户端。
方法如下:
引用
mysql> GRANT SELECT ON somedatabase.sometables TO 'some_user'@'some_hosts' identified by 'password';
mysql> update mysql.user set PassWord = OLD_PASSWORD('newpassword')
-> where Host = 'some_host' and user = 'some_user';
mysql> flush privileges;
linux sort 使用
[
2010/07/16 17:54 | by 张明辉 ]
2010/07/16 17:54 | by 张明辉 ]
最近使用linux shell 处理文件.这里介绍两个命令:sotr和uniq。
简单举例:
1: 删除交集,不同的部分放到一个新文件中。
cat list.txt list.txt.old | sort | uniq -u > list.txt.new
2: 取出两个文件的并集,重复的行只保留一份.
cat file1 file2 | sort | uniq > file3
3: 取出两个文件的交集,只留下同时存在于两个文件中的文件.
cat file1 file2 | sort | uniq -d >file3
简单举例:
1: 删除交集,不同的部分放到一个新文件中。
cat list.txt list.txt.old | sort | uniq -u > list.txt.new
2: 取出两个文件的并集,重复的行只保留一份.
cat file1 file2 | sort | uniq > file3
3: 取出两个文件的交集,只留下同时存在于两个文件中的文件.
cat file1 file2 | sort | uniq -d >file3
mysql 之 prompt 解决登录环境设置
[
2010/07/07 13:09 | by 张明辉 ]
2010/07/07 13:09 | by 张明辉 ]
最近经常需要登录mysql数据库,操作时间一长就不知道自己在那个库里,特别不方便,如果能向Linux登录窗口一样设置就好了!
还好,Mysql中有个prompt可以设置登录环境变量
如下效果:
实现上面的效果可以编辑my.cnf文件,添加:
[mysql]
prompt=\\U:\\p[\d] \\R:\\m:\\s>
\u:连接用户
\h:连接主机
\d:连接数据库
\r:\m:\s:显示当前时间
参考:http://www.himysql.com/mysql/mysql-prompt-customize.html#more-65
还好,Mysql中有个prompt可以设置登录环境变量
如下效果:
引用
[root@node2 data]# /opt/app/mysql4/bin/mysql
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 1 to server version: 4.0.27-hi4
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
root@localhost:mysql.sock[(none)] 11:55:18>use mysql;
Database changed
root@localhost:mysql.sock[mysql] 11:55:27>\q
Bye
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 1 to server version: 4.0.27-hi4
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
root@localhost:mysql.sock[(none)] 11:55:18>use mysql;
Database changed
root@localhost:mysql.sock[mysql] 11:55:27>\q
Bye
实现上面的效果可以编辑my.cnf文件,添加:
[mysql]
prompt=\\U:\\p[\d] \\R:\\m:\\s>
\u:连接用户
\h:连接主机
\d:连接数据库
\r:\m:\s:显示当前时间
参考:http://www.himysql.com/mysql/mysql-prompt-customize.html#more-65
apache-mod_layout的使用 [原创]
[
2010/06/17 17:07 | by 张明辉 ]
2010/06/17 17:07 | by 张明辉 ]
什么是SSI ?
SSI是嵌入HTML页面中的指令,在页面被提供时由服务器进行运算,以对现有HTML页面增加动态生成的内容,而无须通过CGI程序提供其整个页面,或者使用其他动态技术。
至于什么时候应当用SSI ,而什么时候应当用某些程序生成整个页面,取决于页面中有多少内容是静态的,又有多少内容需要在每次页面被提供时重新计算。SSI是一种增加小段动态信息的好方法,比如当前时间。如果你的页面大部分内容是在被提供时动态生成的,那就要另找方案了.
以上是apache 官方的解释,而在apache 里面的实现就是通过mod_include模块实现.要使服务器允许SSI,必须在httpd.conf或.htaccess文件中有如下配置:
AddType text/html .shtml
AddOutputFilter INCLUDES .shtml ####声明那些文件后缀使用ssi
Options +Includes ####启用ssi指令
首先我们分析下ssi原理和设置:
1:全文式的搜索文件内容来寻找源码的Include标签,消耗大量cpu资源
2:而大量的html文件是不经常更改的,所以无法随意的修改文件后缀(shml),尽管我可以更改如下:
AddType text/html .shtml html
AddOutputFilter INCLUDES .shtml html
但是我其他没有include标签的html似乎很无辜!
3:通过设置"XBitHack on“似乎能解决一些问题,但也仅仅是杯水车薪。
当然ssi对系统性能的影响完全大于我们对他的需求
今天的web不是几年前的web那么简单,不是几个简单的html就能搞定的事,大量内容的发布似拖动了整个页面的更新.往往这些更新只是局部的,这样的开销开销似乎很不合算.SSi就是满足了我们这点.
那有没有更简单的方式实现服务器端包含呢?
答案是有的!
今天我们介绍通过apache的第三方模块实现对现有HTML文档增加动态内容的方法
mod_layout
mod_layout(http://tangent.org/362/mod_layout.html)是一个Apache模块,它支持html网页内容自动插入来自其他URL或者文件输出的内容来子作为指定网页的页眉和页脚。目前支持mod_perl,PHP 和 Apache JServ.和几乎任何类型的处理程序。
据我了解sina就是使用mod_layout!
[root@node2 extra]# curl --head www.sina.com.cn
HTTP/1.0 200 OK
Date: Thu, 17 Jun 2010 08:22:02 GMT
Server: Apache/2.0.54 (Unix)
Last-Modified: Thu, 17 Jun 2010 08:21:00 GMT
Accept-Ranges: bytes
X-Powered-By: mod_xlayout_jh/0.0.1vhs.markIII.remix
Cache-Control: max-age=60
Expires: Thu, 17 Jun 2010 08:23:02 GMT
Vary: Accept-Encoding
X-UA-Compatible: IE=EmulateIE7
Content-Type: text/html
Age: 48
Content-Length: 555586
X-Cache: HIT from sh201-20.sina.com.cn
Connection: close
[root@node2 extra]# curl --head http://sh.house.sina.com.cn/
HTTP/1.1 200 OK
Date: Thu, 17 Jun 2010 08:29:36 GMT
Server: Apache/2.2.6 (Unix)
Last-Modified: Thu, 17 Jun 2010 08:18:35 GMT
Accept-Ranges: bytes
Cache-Control: max-age=1800
Expires: Thu, 17 Jun 2010 08:59:36 GMT
X-Powered-By: ModLayout/5.1
Vary: Accept-Encoding
Connection: close
Content-Type: text/html
SSI是嵌入HTML页面中的指令,在页面被提供时由服务器进行运算,以对现有HTML页面增加动态生成的内容,而无须通过CGI程序提供其整个页面,或者使用其他动态技术。
至于什么时候应当用SSI ,而什么时候应当用某些程序生成整个页面,取决于页面中有多少内容是静态的,又有多少内容需要在每次页面被提供时重新计算。SSI是一种增加小段动态信息的好方法,比如当前时间。如果你的页面大部分内容是在被提供时动态生成的,那就要另找方案了.
以上是apache 官方的解释,而在apache 里面的实现就是通过mod_include模块实现.要使服务器允许SSI,必须在httpd.conf或.htaccess文件中有如下配置:
AddType text/html .shtml
AddOutputFilter INCLUDES .shtml ####声明那些文件后缀使用ssi
Options +Includes ####启用ssi指令
首先我们分析下ssi原理和设置:
1:全文式的搜索文件内容来寻找源码的Include标签,消耗大量cpu资源
2:而大量的html文件是不经常更改的,所以无法随意的修改文件后缀(shml),尽管我可以更改如下:
AddType text/html .shtml html
AddOutputFilter INCLUDES .shtml html
但是我其他没有include标签的html似乎很无辜!
3:通过设置"XBitHack on“似乎能解决一些问题,但也仅仅是杯水车薪。
当然ssi对系统性能的影响完全大于我们对他的需求
今天的web不是几年前的web那么简单,不是几个简单的html就能搞定的事,大量内容的发布似拖动了整个页面的更新.往往这些更新只是局部的,这样的开销开销似乎很不合算.SSi就是满足了我们这点.
那有没有更简单的方式实现服务器端包含呢?
答案是有的!
今天我们介绍通过apache的第三方模块实现对现有HTML文档增加动态内容的方法
mod_layout
mod_layout(http://tangent.org/362/mod_layout.html)是一个Apache模块,它支持html网页内容自动插入来自其他URL或者文件输出的内容来子作为指定网页的页眉和页脚。目前支持mod_perl,PHP 和 Apache JServ.和几乎任何类型的处理程序。
据我了解sina就是使用mod_layout!
[root@node2 extra]# curl --head www.sina.com.cn
HTTP/1.0 200 OK
Date: Thu, 17 Jun 2010 08:22:02 GMT
Server: Apache/2.0.54 (Unix)
Last-Modified: Thu, 17 Jun 2010 08:21:00 GMT
Accept-Ranges: bytes
X-Powered-By: mod_xlayout_jh/0.0.1vhs.markIII.remix
Cache-Control: max-age=60
Expires: Thu, 17 Jun 2010 08:23:02 GMT
Vary: Accept-Encoding
X-UA-Compatible: IE=EmulateIE7
Content-Type: text/html
Age: 48
Content-Length: 555586
X-Cache: HIT from sh201-20.sina.com.cn
Connection: close
[root@node2 extra]# curl --head http://sh.house.sina.com.cn/
HTTP/1.1 200 OK
Date: Thu, 17 Jun 2010 08:29:36 GMT
Server: Apache/2.2.6 (Unix)
Last-Modified: Thu, 17 Jun 2010 08:18:35 GMT
Accept-Ranges: bytes
Cache-Control: max-age=1800
Expires: Thu, 17 Jun 2010 08:59:36 GMT
X-Powered-By: ModLayout/5.1
Vary: Accept-Encoding
Connection: close
Content-Type: text/html




