2012年6月

方法一(通用):

1.在my.cnf或my.ini中的[mysqld]字段加入skip-grant-tables,免认证登录

2.重启mysql服务,进入CLI模式

#使用root用户
mysql -uroot

3.在mysql命令行修改root密码

use mysql;
update user set authentication_string=password('newpassword') where user='root';
flush privileges;

# mysql old version
#update user set Password=password('newpassword') where user='root';

4.去掉my.cnf或my.ini中的skip-grant-tables,重启mysqld

方法二(Debian系统):

类Debian系统可直接使用/etc/mysql/debian.cnf中[client]节提供的密码登录

#查看系统保留密码
cat /etc/mysql/debian.cnf
#使用系统用户登录
mysql -udebian-sys-maint -p

最近,网站服务器CPU经常就会飙升到100%,但内存,IO,网络等一切正常,今天忽然想起有可能是ulimit的问题,马上查看文件句柄数限制

ulimit -n

得到的结果是:5120,这个值对生产中的服务显得偏小。

网上给出的解决方案,大部分是直接输入

ulimit -SHn 102400 # 102400可自己根据应用调整

此法缺点很明显,一旦退出登陆立即失效。

下面给出正确的解决办法:

1.修改/etc/security/limits.conf子配置,命令如下

echo * - nofile 102400 >> /etc/security/limits.d/nofile.conf
echo root - nofile 102400 >> /etc/security/limits.d/nofile.conf

重新登录查看是否生效。若未生效,请继续深入~

2.编辑/etc/pam.d/su,取消如下行注释

session required pam_limits.so

重新登录查看是否生效。若未生效,请继续深入~

3.编辑/etc/profile,加入一行

ulimit -SHn 102400

重启服务器,再次登陆,查看句柄数,已经正确设置为102400。

如果有碰到类似情况,可以检查一下看看是不是文件句柄数设置太小引起的。

关于在Ubuntu12.04上安装QQ2012这个问题,我在网上找了几篇文章,均感觉很复杂,特别是安装msxml之类的库,竟然说要手动安装,这不是辱没linux系统的命令行特性么。哎,是在无语了。我总结如下命令安装qq2012,运行正常,但登陆的时候只能使用qq自带的虚拟键盘,否则应用程序会崩溃

#安装wine
sudo apt-get install wine
#安装字体和运行库
winetricks allfonts gdiplus riched20 vcrun6 vcrun2005sp1 msxml6 ie8 flash
#安装QQ2012Beta2
wget http://dl_dir.qq.com/qqfile/qq/QQ2012/QQ2012Beta2.exe
wine QQ2012Beta2.exe
rm QQ2012Beta2.exe

如何运行qq呢?

wine "~/.wine/drive_c/Program Files/Tencent/QQ/Bin/QQ.exe"