分类:技术

  • 共享锁和排它锁

    14-10-01 10:23 23518 0 技术

    两种锁的概念

    共享锁(Shared Lock,S锁)

    • 允许多个事务同时读取数据,但不允许修改数据。
    • 其他事务可以获取共享锁,但不能获取排它锁。

    排它锁(Exclusive Lock,X锁):

    • 独占数据的访问权,禁止其他事务读取或修改。
    • 在事务持有排它锁期间,其他事务不能获取共享锁或排它锁。

    这两种锁机制确保了数据的一致性和完整性。

    两种锁的使用场景

    共享锁(Shared Lock, S锁)

    假设有两个用户,用户A和用户B,他们都想读取同一条记录。用户A获取了该记录的共享锁,因此可以读取数据。同时,用户B也可以获取共享锁来读取相同的数据,因为共享锁允许多个读操作并发进行。

    排它锁(Exclusive Lock, X锁)

    现在,用户A想要修改这条记录,他需要获取排它锁。此时,用户B不能获取任何锁(包括共享锁和排它锁)来访问该记录,直到用户A完成修改并释放排它锁。这样保证了数据的一致性和防止并发写入冲突。

  • Ubuntu 下快速启用 Apache2 的 rewrite 方法

    14-09-02 10:14 21522 0 技术
    a2enmod rewrite
    service apache2 restart
    

    sudo vim /etc/apache2/sites-enabled/000-default

    AllowOverride None
    

    全部改成

    AllowOverride All
    
  • 解决 GitHub 无法更新的问题

    14-08-23 15:26 22942 0 技术

    前提是安装了 shadowsocks

    git config --global https.proxy 'socks5://127.0.0.1:1080'
    
  • MySQL 5.7.9 报错 “this is incompatible with sql_mode=only_full_group_by”

    14-08-15 12:59 24971 0 技术
    mysql> set global sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION';
    mysql> set session sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION';
    
  • Linux 命令行输入的命令的操作技巧

    14-08-03 15:26 24188 0 技术
    ctrl + r //可以在历史的命令中搜索
    ctrl + a //光标移到命令行的开始位置
    ctrl + e //光标移到命令行的结束位置
    
    ctrl + f //光标向前移动
    ctrl + b //光标向后移动
    
    ctrl + u //清除当前命令行
    ctrl + c //直接转到下一行
    
  • CentOS 报错:yum-config-manager: 未找到命令

    14-07-15 20:01 27066 0 技术

    这是因为系统默认没有安装这个命令,这个命令在 yum-utils 包里,可以通过命令 yum -y install yum-utils 安装就可以了。

  • FastCGI sent in stderr: "Primary script unknown" while reading response header from upstream

    14-06-26 10:15 23731 0 技术

    错误原因及解决方法:

    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
    

    而 Nginx 识别不到 /scripts 路径,所以 phpinfo 验证信息就无法正常通过,需要修改如下:

    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    

    注意:$document_root 代表当前请求在 root 指令中指定的值。

  • CentOS 服务器搭建 Shadowsockets 教程

    14-06-20 15:25 25363 0 技术
    yum install python-setuptools m2crypto supervisor
    easy_install pip
    pip install shadowsocks
    
    /usr/bin/python /usr/bin/ssserver -p 443 -k yourpassword -m aes-256-cfb --user nobody -d start
    
  • 解决错误:nginx: [emerg] unknown log format "main"

    14-06-14 21:10 24079 0 技术

    重启 nginx 出现了如下错误:

    nginx: [emerg] unknown log format "main" in /usr/local/nginx/conf/nginx.conf:34
    

    解决办法:

    打开 nginx.conf,”main” 错误是因为丢失了 log_format 选项,把 log_format 所在行的注释去掉就 OK 了。

  • Windows 修改 Caps Lock 为 Control 键

    14-05-25 15:36 24060 0 技术

    保存以下内容到 ChangeCapsToControl.reg

    Windows Registry Editor Version 5.00
    
    [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout]
    "Scancode Map"=hex:00,00,00,00,00,00,00,00,02,00,00,00,1d,00,3a,00,00,00,00,00
    

    双击替换成功!

文章归档

文章日历

2024 年 11 月
26 27 28 29 30 01 02
03 04 05 06 07 08 09
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30

文章标签

最新评论

友情链接