Linux 忘记myql的root密码-重置

1.在重新设置MySQL的root密码的期间,MySQL数据库完全出于没有密码保护的
状态下,其他的用户也可以任意地登录和修改MySQL的信息。可以采用将MySQL对
外的端口封闭,包括3306等端口,并且停止服务器以及所有用户的进程保证服务器安全状态。
2.修改MySQL的登录设置:
# vi /etc/my.cnf
在[mysqld]的段中加上一句:skip-grant-tables
例如:
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
skip-grant-tables
#顾名思义,就是在启动mysql时不启动grant-tables,授权表。有什么用呢?当然是忘记管理员密码后有用。
保存并且退出vim。
3.重新启动mysql
# /etc/init.d/mysql restart
Stopping MySQL: [ OK ]
Starting MySQL: [ OK ]
4.登录并修改MySQL的root密码
# /usr/bin/mysql
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 3 to server version: 3.23.56
Type ‘help;’ or ‘\h’ for help. Type ‘\c’ to clear the buffer.
mysql> USE mysql ;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
mysql> UPDATE user SET Password = password ( ‘new-password’ ) WHERE User = ‘root’ ;
Query OK, 0 rows affected (0.00 sec)
Rows matched: 2 Changed: 0 Warnings: 0
mysql> flush privileges ;
Query OK, 0 rows affected (0.01 sec)
mysql> quit
Bye
5.将MySQL的登录设置修改回来
# vi /etc/my.cnf
将刚才在[mysqld]的段中加上的skip-grant-tables删除注释掉
保存并且退出vim。
6.重新启动mysqld
# /etc/init.d/mysqld restart
Stopping MySQL: [ OK ]
Starting MySQL: [ OK ]

Linux 下SVN安装和配置

1.环境
centos6.8

2.安装svn
yum -y install subversion

3.配置

建立版本库目录
mkdir /www/svndata

svnserve -d -r /www/svndata

4.建立版本库

创建一个新的Subversion仓库项目,mypj命名自取
svnadmin create /www/svndata/mypj

配置允许用户rsync异步访问
cd /www/svndata/oplinux/conf

vi svnserve.conf
anon-access=none
auth-access=write
password-db=passwd

注:修改的文件前面不能有空格,否则启动svn server出错

vi passwd
[users]
#<用户1> = <密码1>
#<用户2> = <密码2>
test=123456

5.window本地tortoise客户端下载
svn co svn://ip/mypj
输入用户名和密码

===============================================================

6.实现SVN与WEB同步,CO一个出来,放在项目目录下,为下面的实现钩子同步更新做好铺垫

1)设置WEB服务器根目录为/www/webroot

2)checkout一份SVN 到webroot目录下

svn co svn://localhost/mypj  /www/webroot/mypj

如出现以下情况,说明是第一次链接,需要填写root管理密码和svn账号密码

clipboard

修改权限为WEB用户

chown -R www:www /www/webroot/mypj

3)建立同步脚本

cd /www/svndata/oplinux/hooks/

cp post-commit.tmpl post-commit

编辑post-commit,在文件最后添加以下内容

export LANG=zh_CN.UTF-8
REPOS=”$1″
REV=”$2″
SVN_PATH=/usr/bin/svn
WEB_PATH=/www/webroot/mypj
LOG_PATH=/tmp/svn_update.log
#/usr/bin/svn update –username user –password password $WEB_PATH –no-auth-cache
echo “nnn##########开始提交 ” `date “+%Y-%m-%d %H:%M:%S”` ‘##################’ >> $LOG_PATH
echo `whoami`,$REPOS,$REV >> $LOG_PATH
$SVN_PATH update –username test –password 123456  $WEB_PATH –no-auth-cache >> $LOG_PATH
chown -R www:www $WEB_PATH

设置文件有执行权限,chmod +x post-commit

不然会出现post-commit hook failed(exit code 255) with no output的错误提示。

文件上传更新,大功告成!

 

 

 

 

 

LNMP下 nginx出现502 Bad Gateway 解决

502 Bad Gateway是一种报错提示,这一错误并不意味着上游服务器已关闭(无响应网关/代理),而是上游服务器和网关/代理不同意的协议交换数据,相比之下,500是种内部服务器错误,99%是代码层面错误。

  1. 第一种原因:目前lnmp一键安装包比较多的问题就是502 Bad Gateway,大部分情况下原因是在安装php前,脚本中某些lib包可能没有安装上,造成php没有编译安装成功。解决办法:可以尝试根据lnmp一键安装包中的脚本手动安装一下,看看是什么错误导致的。
  2. 第二种原因:在php.ini里,eaccelerator配置项一定要放在Zend Optimizer配置之前,否则也可能引起502 Bad Gateway
  3. 第三种原因:在安装好使用过程中出现502问题,一般是因为默认php-cgi进程是5个,可能因为phpcgi进程不够用而造成502,需要修改/usr/local/php/etc/php-fpm.conf 将其中的max_children值适当增加。
  4. 第四种原因:php执行超时,修改/usr/local/php/etc/php.ini将max_execution_time 改为300。
  5. 第五种原因:磁盘空间不足,如mysql日志占用大量空间。
  6. 第六种原因:查看php-cgi进程是否在运行。

—————-以上是网上的各种答案,在服务器各种检查,502还是没解决。

最后发现服务器的nginx虚拟主机/usr/local/nginx/conf/vhost/xxx.conf的fastcgi_pass配置和/usr/local/php/etc/php_fpm.conf的listen配置不一样,一个是 /tmp/php-cgi.sock,另一个是127.0.0.1:9000,配置成一样就ok,网站正常访问200状态。

QQ截图20170703105300