Ubuntu 12.04 LTS Server 更改 MySQL 数据库文件存储位置

Ubuntu Server 里面 MySQL 的数据库文件默认存储在 /var/lib/mysql 目录,如果使用 VPS 的话有个专门的 /data 数据盘,把数据都放在这个盘里面那是必须的。

Ubuntu Server 里面 MySQL 要改变数据库文件位置需要更改2个配置,1个就是 MySQL 的配置文件:/etc/mysql/my.cnf,把

datadir=/var/lib/mysql

更改为

datadir=/data/databases/mysql

还有个地方就是 /etc/apparmor.d/tunables/alias 增加一句:

alias /var/lib/mysql/ -> /data/databases/mysql/

然后把旧数据库文件复制到新目录,再重启 apparmor 和 mysql 服务就好了。

隐藏 Firefox 书签工具栏菜单中的“在标签页中打开书签组”

其实这个东西挺烦的,不小心点错了会开好多窗口,所以我决定把他隐藏了,要隐藏他就必须要用 Firefox 的 userChrome.css 文件了。

 

开 始 -> 运行 -> 输入 %AppData%\Mozilla\Firefox\Profiles,然后进入里面类似 xxxxxxx.default 的目录,再进入 chrome 目录,把文件 userChrome-example.css 改名为 userChrome.css。

然后修改 userChrome.css 文件,增加下面的 CSS 语句

menupopup[placespopup="true"] > menuseparator:nth-last-child(-n+2),
menupopup[placespopup="true"] > menuseparator:nth-last-child(-n+2) + menuitem
{
 display: none !important;
}

 

WinForm 鼠标忙碌状态

在一个用时比较长的操作里面,如果直接设置 UseWaitCursor = True ,鼠标只能在操作完成后才能响应这个设置。解决办法是新建一个类:

public class HourGlass : IDisposable 
{
    public HourGlass()
    {
        Enabled = true;
    }
    public void Dispose()
    {
        Enabled = false;
    }

    public static bool Enabled
    {
        get { return Application.UseWaitCursor; }
        set
        {
            if (value == Application.UseWaitCursor) return;
            Application.UseWaitCursor = value;
            Form f = Form.ActiveForm;
            if (f != null && f.Handle != null)
                SendMessage(f.Handle, 0x20, f.Handle, (IntPtr)1);
        }
    }

    [System.Runtime.InteropServices.DllImport("user32.dll")]
    private static extern IntPtr SendMessage(IntPtr hWnd, int msg, IntPtr wp, IntPtr lp);
}

然后使用:

using (new HourGlass())
{
    // 长时间操作
}