MySQL 修改用户密码

有两种方法可以修改密码:

mysqladmin 命令

mysqladmin -uroot -p[oldpass] password newpass

oldpass(老密码)可选,如果root默认密码为空,则不需要输入。

如果需要更改老密码,请注意老密码与-p之间不要有空格。

mysql 命令

mysql -uroot -p
mysql> use mysql;
mysql> UPDATE user SET Password = PASSWORD('newpass') WHERE user = 'root';
mysql> FLUSH PRIVILEGES;

Linux 以图形界面启动

这一块在各个发行版之间、同一个发行版内部,都有不同的方式。这一篇以 Debian 8 作为例子,其它版本请谨慎阅读。

  • 修改内核启动参数

      vi /etc/default/grub
    
      GRUB_CMDLINE_LINUX_DEFAULT="text"  # 原先为 GRUB_CMDLINE_LINUX_DEFAULT="quiet"
      GRUB_TERMINAL=console  # 原先被注释掉了
    

    然后运行

      update-grub
    
  • 不启动窗口管理器

      vi /etc/X11/default-display-manager
     
      #/usr/sbin/gdm3
      /bin/true
    
  • 加载默认配置

      systemctl set-default multi-user.target
    

完成。


onethink 的数据库依赖 Mysql 在 PHP7 上的小坑

Onethink是基于Thinkphp 3.2开发的一款内容管理框架。 今天在安装过程中出现mysql_connect检测失败,无法安装的问题。

从根源上说,这个是 PHP7 关于 MySQL 连接实现的改变引起的一个问题。

Onethink 总共检测了3个函数 mysql_connect(),file_put_contents(),mb_strlen(),如果在低于PHP7的环境下可能没什么问题, 在PHP7中,mysql_connect()函数已经被废弃,所以无论如何都检测不过的,PHP官方也是推荐使用Mysqli或者PDO(PHP数据对象)方式连接数据库,增加应用的安全性。

因此我们可以修改环境检测的代码,只要修改一处就可以了。

在Application/Install/Common/function.php中找到方法check_func()把检测 mysql_connect 改成 mysqli_connect 即可

/**
 * 函数检测
 * @return array 检测数据
 */
function check_func(){
    $items = array(
        array('mysqli_connect',     '支持', 'success'),
        array('file_get_contents', '支持', 'success'),
        array('mb_strlen',         '支持', 'success'),
    );

    foreach ($items as &$val) {
        if(!function_exists($val[0])){
            $val[1] = '不支持';
            $val[2] = 'error';
            $val[3] = '开启';
            session('error', true);
        }
    }

    return $items;
}

检测后,安装选择mysqli的方式连接数据库。


nginx 设置目录访问权限

1.创建htpasswd文件:

可以使用以下这个python脚本生成认证文件:htpasswd.py

执行命令:

chmod 777 htpasswd.py
./htpasswd.py -c -b filename username password

或安装htpasswd:

apt-get install apache2-utils
htpasswd -c filename username

2.修改nginx的conf

server {
    listen       80;
    
    ***
    ***
    
    auth_basic "Password";
    auth_basic_user_file /var/local/nginx/conf/xxx;

    *** 
    *** 
    }
}

参考资料