存档

‘技术’ 分类的存档

迁移-关于mysql的一点问题

2011年11月14日 没有评论
No Gravatar

上周五终于买了台PC一来当服务器,换下了工作了一年多的老服务器。512M内存的它前一段时间经常遇到各种问题,已经不堪重负了。我们这样规模、这样时期的团队用专用的服务器还是有点奢侈。

更高速的CPU,更大的内存,更大的硬盘。不得不说Linux还是要比Windows方便,硬盘重新挂上之后,重新启用了一下网卡就OK了。然后将数据库和web服务、svn、samba服务的内容迁移到新盘。结果问题就出来了。redmine无法启动。手工用mysql -u -h -p连接数据库,结果是:
Can’t connect to local MySQL server through socket
用sudo service mysql status检查,结果是:
mysql respawn/post-start
看到这篇文章:
ubuntu 10.04 修改my.cnf后导致mysql服务无法启动的问题,发现自己忘了这条:**不可能没日志的,看/var/log/mysql下的日志。检查error.log里发现最后的问题是:
/var/lib/mysql/***.pid 无法创建
问题没有这么严重了。重新换了新的目录后,没有设置/var/lib/mysql目录自己的权限。将owner修改之后问题就解决了。

参考:
1. ubuntu 查看内存指令
2. ubuntu 10.04 修改my.cnf后导致mysql服务无法启动的问题
3. ubuntu速度慢的原因之内存和swap分区
4.

分类: 技术 标签: , , , ,

A卡图形特效全开有时无法显示窗体边框的解决办法

2011年11月12日 没有评论
No Gravatar

只需要切换一下特效就可以了。

将Extra->None,然后再切换回来即可。

再来看这段,老是记不住:

您可以使用sysctl修改系统变量,也可以通过编辑sysctl.conf文件来修改系统变量。sysctl.conf 看起来很像 rc.conf。它用 variable=value 的形式来设定值。指定的值在系统进入多用户模式之后被设定。并不是所有的变量都可以在这个模式下设定。
sysctl 变量的设置通常是字符串、数字或者布尔型。 (布尔型用 1 来表示’yes’,用 0 来表示’no’)。例如
#sysctl -w kernel.sysrq=0

分类: 技术 标签: , , , , ,

#搜集-vi替换字符串

2011年11月10日 没有评论
No Gravatar

1. vim字符串替换

vi/vim 中可以使用 :s 命令来替换字符串。以前只会使用一种格式来全文替换,今天发现该命令有很多种写法(vi 真是强大啊,还有很多需要学习),记录几种在此,方便以后查询。

:s/vivian/sky/ 替换当前行第一个 vivian 为 sky

:s/vivian/sky/g 替换当前行所有 vivian 为 sky

:n,$s/vivian/sky/ 替换第 n 行开始到最后一行中每一行的第一个 vivian 为 sky

:n,$s/vivian/sky/g 替换第 n 行开始到最后一行中每一行所有 vivian 为 sky

n 为数字,若 n 为 .,表示从当前行开始到最后一行

:%s/vivian/sky/(等同于 :g/vivian/s//sky/) 替换每一行的第一个 vivian 为 sky

:%s/vivian/sky/g(等同于 :g/vivian/s//sky/g) 替换每一行中所有 vivian 为 sky

可以使用 # 作为分隔符,此时中间出现的 / 不会作为分隔符

:s#vivian/#sky/# 替换当前行第一个 vivian/ 为 sky/

:%s+/oradata/apras/+/user01/apras1+ (使用+ 来 替换 / ): /oradata/apras/替换成/user01/apras1/

* ************************************

1.:s/vivian/sky/ 替换当前行第一个 vivian 为 sky

:s/vivian/sky/g 替换当前行所有 vivian 为 sky

2. :n,$s/vivian/sky/ 替换第 n 行开始到最后一行中每一行的第一个 vivian 为 sky

:n,$s/vivian/sky/g 替换第 n 行开始到最后一行中每一行所有 vivian 为 sky

(n 为数字,若 n 为 .,表示从当前行开始到最后一行)

3. :%s/vivian/sky/(等同于 :g/vivian/s//sky/) 替换每一行的第一个 vivian 为 sky

:%s/vivian/sky/g(等同于 :g/vivian/s//sky/g) 替换每一行中所有 vivian 为 sky

4. 可以使用 # 作为分隔符,此时中间出现的 / 不会作为分隔符

:s#vivian/#sky/# 替换当前行第一个 vivian/ 为 sky/

5. 删除文本中的^M

问题描述:对于换行,window下用回车换行(0A0D)来表示,linux下是回车(0A)来表示。这样,将window上的文件拷到unix上用时,总会有个^M.请写个用在unix下的过滤windows文件的换行符(0D)的shell或c程序。

· 使用命令:cat filename1 | tr -d “^V^M” >newfile;

· 使用命令:sed -e “s/^V^M//” filename >outputfilename。需要注意的是在1、2两种方法中,^V和^M指的是Ctrl+V和Ctrl+M。你必须要手工进行输入,而不是粘贴。

· 在vi中处理:首先使用vi打开文件,然后按ESC键,接着输入命令:%s/^V^M//。

· :%s/^M$//g

如果上述方法无用,则正确的解决办法是:

· tr -d “r” <src >dest

· tr -d “5″ dest

· strings A>B

6. 其它

利用 :s 命令可以实现字符串的替换。具体的用法包括:

:s/str1/str2/ 用字符串 str2 替换行中首次出现的字符串 str1

:s/str1/str2/g 用字符串 str2 替换行中所有出现的字符串 str1

:.,$ s/str1/str2/g 用字符串 str2 替换正文当前行到末尾所有出现的字符串 str1

:1,$ s/str1/str2/g 用字符串 str2 替换正文中所有出现的字符串 str1

:g/str1/s//str2/g 功能同上

从上述替换命令可以看到:g 放在命令末尾,表示对搜索字符串的每次出现进行替换;不加 g,表示只对搜索

字符串的首次出现进行替换;g 放在命令开头,表示对正文中所有包含搜索字符串的行进行替换操作。

2. vi 中如何使用 :s 命令实现字串的替换.
http://www.linpus.com.tw (2001-06-28 21:04:00)
:s/str1/str2/ 用字串 str2 替换行中首次出现的字串 str1
:s/str1/str2/g 用字串 str2 替换行中所有出现的字串 str1
:.,$ s/str1/str2/g 用字串str2替换正文当前行到末尾所有出现的字符串str1
:1,$ s/str1/str2/g 用字串str2替换正文中所有出现的字串str1
:g/str1/s//str2/g 功能同上.
  由以上可知,g放在命令末尾,表示对搜索字串的每次出现进行替换;不加g,表示只对搜索字串
的首次出现进行替换,g放在命令开头,表示对正文中所有包含搜索字串的行进行替换.
分类: 技术 标签: , , ,

最近积攒的一点开源资源

2011年11月5日 没有评论
No Gravatar

>> mono项目中的WebBrowser控件,支持Gecko/WebKit两个核心。
Motivation: WebBrowser control for MWF/动力:MWF中的WebBrowser
注:
1. MWF指的是Mono WinForms吗?
2. 如果不是COM扩展,应该是不支持window.external扩展了吧

>> Android SDK: Embed a WebView with the WebKit Engine
Android SDK: Embed a WebView with the WebKit Engine
注:
1.这个已经由@ln_bo 测试过。不过在某些版本的国产平板上apk包出现解析错误,有可能是SDK版本的问题吧。过一段时间正式做技术准备的时候再详细测试。
2.需要参考的资料:
2.1 public class WebView
2.2 Web Apps Overview
3.看这段代码中是最后一个类MyWebChromeClient,应该是可以支持callback的。WebViewDemo.java

>>stackato
ActiveState公司悄悄出品的私有PaaS。它基于CloudFoundry
注:
1. Architecture Diagram: Stackato as a micro cloud

2. Architecture Diagram: Stackato on vSphere or hosted with an IaaS

3. 它还可以提供一个Sandbox,详细内容看这里:
4. 或者下载一份虚拟机映像,服务器版本的VM是基于Ubuntu Linux Server 10.04.3 LTS的,需要64位器,4G以上内容,并且需要至少3G以上的磁盘空间。
5.文档很详细Quick Start。安装好虚拟机之后直接http访问访问bridge ip也会给出Stackato Document
6. 开发支持Clojure/Java/Node.js/Perl/PHP/Python/Ruby
7. Copy-cat的话就看这个:github stackato-samples或者Sample Applications。后面的直接可以看到例子和README说明。

Cannot modify header information – headers already sent by

2011年10月23日 没有评论
No Gravatar

 

 

前几天Godaddy里布署应用,出现“Cannot modify header information – headers already sent by”错误,参照下文可以解决:

http://www.wuleilei.net/808.html

发现配置的php版本为5.x版本,所以配置文件php.ini必须更改为 php5.ini

output_buffering = 4096

分类: Coding 标签: ,

Ubuntu 11.10,还有很长的路要走

2011年10月21日 没有评论
No Gravatar

在吐槽之前,回忆一下这几天将Ubuntu升级到11.10的过程。
话说上周五之前,一切还都是那样美好。虽然nvidia并没有因为可以接3个显示器就支持它,虽然因为编译cheese导致我的amd显卡的台式机ubuntu-desktop出现问题后也出现了多屏的配置问题,但最后都解决了。
周五的时候因为已经提醒可以更新新版了就将笔记本(nvidia显卡)带回家。升级过程很顺利。不顺利的是amd显卡的那台。一番折腾之总算好了。不过是少了一个链接。
周一到单位之后一接上那台显示器之后发现无法启动双屏:
1. 如果设置TwinView则黑屏

2. 黑屏后如果将TwinView改成Disabled则出现对话框:Failed to set MetaMode (1) ‘DFP-0: nvidia-auto-select @ 1920×1080 +0+0′ (Mode 1920×1080, id: 140) on X screen 0.

3. 再进入nvidia-settings 则原来的第二个显示器信息消失

参考了以下文章:

安装:sudo apt-get install libgl1-mesa-dri-experimental

安装nvidia 285驱动,结果死活pre-install script就过不去。这个闭源的驱动真不爽。折腾几回还是回到10.10吧, 前一段时间体验Unity已经有点烦了。反正家里还有一台是11.10。:)

阅读全文…

分类: Linux, Ubuntu 标签: , , , , ,

Switch to our mobile site