分类目录归档:mysql

centos6.5 yum install nginx php mysql

一、下载Remi源

32位系统选择:
rpm -ivh http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
64位系统选择:
rpm -ivh http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
导入key:
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6

远程导入Remi包

rpm -ivh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm

导入key:
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-remi

二、安装lnmp
更新系统rmp
yum --enablerepo=remi -y update
安装php

yum --enablerepo=remi,remi-php55 -y install nginx php-fpm php-common

安装Mysql
yum -y install mysql mysql-server
安装mysql扩展
yum  -y install mysql-connector-odbc mysql-devel libdbi-dbd-mysql
安装php的扩展
yum --enablerepo=remi,remi-php55 -y install php-opcache php-pecl-apcu php-cli php-pear php-pdo php-mysqlnd php-pgsql php-pecl-mongo php-sqlite php-pecl-memcache php-pecl-memcached php-gd php-mbstring php-mcrypt php-xml php-redis php-soap php-ldap php-mysql php-devel
三、启动服务配置
#增加mysql启动对象
/sbin/chkconfig --add mysqld
#开启启动mysql
/sbin/chkconfig mysqld on
 #设置php
/sbin/chkconfig php-fpm on
 #重启MySql
/etc/init.d/mysqld restart
#重启nginx
/etc/init.d/nginx  restart
 #启动php-fpm
/etc/rc.d/init.d/php-fpm start
配置系列:
一、配置nginx支持php
#备份原有配置文件
cp /etc/nginx/nginx.conf  /etc/nginx/nginx.confbak

#编辑
vi /etc/nginx/nginx.conf

#修改nginx运行账号为:nginx组的nginx用户
user  nginx  nginx;

#备份原有配置文件
cp /etc/nginx/conf.d/default.conf /etc/nginx/conf.d/default.confbak

#编辑
vim /etc/nginx/conf.d/default.conf

#增加index.php
index index.php index.html index.htm index.php;

#取消FastCGI server部分location的注释,并要注意fastcgi_param行的参数,改为$document_root$fastcgi_script_name,或者使用绝对路径
# pass the PHPscripts to FastCGI server listening on 127.0.0.1:9000
#
location ~ \.php$ {
root          html;
fastcgi_pass   127.0.0.1:9000;
fastcgi_index  index.php;
fastcgi_param  SCRIPT_FILENAME /var/www/html$fastcgi_script_name;
include       fastcgi_params;
}

二、配置php

#编辑
vim /etc/php.ini

#设置时间格式
date.timezone= PRC

#在386行列出PHP可以禁用的函数,如果某些程序需要用到这个函数,可以删除,取消禁用。

disable_functions=passthru,exec,system,chroot,scandir,chgrp,chown,shell_exec,proc_open,proc_get_status
,ini_alter,ini_restore,dl,openlog,syslog,readlink
,symlink,popepassthru,stream_socket_server,escapeshellcmd,dll,popen
,disk_free_space,checkdnsrr,getservbyname,getservbyport,disk_total_space
,posix_ctermid,posix_get_last_error,posix_getcwd,posix_getegid,posix_geteuid,posix_getgid
,posix_getgrgid,posix_getgrnam,posix_getgroups,posix_getlogin,posix_getpgid,posix_getpgrp
,posix_getpid,posix_getppid,posix_getpwnam,posix_getpwuid,posix_getrlimit,posix_getsid
,posix_getuid,posix_isatty,posix_kill,posix_mkfifo,posix_setegid,posix_seteuid,posix_setgid
,posix_setpgid,posix_setsid,posix_setuid,posix_strerror,posix_times,posix_ttyname,posix_uname

#在432行 禁止显示php版本的信息
expose_php = Off

#大约745行 magic_quotes_gpc改为On = 防止SQL注入

magic_quotes_gpc = On

5.3以上版本为放弃的,不然报错
Starting php-fpm: [07-Sep-2015 14:17:22] NOTICE: PHP message: PHP Warning:  Directive 'magic_quotes_gpc' is deprecated in PHP 5.3 and greater in Unknown on line 0

#在380行,设置表示允许访问当前目录(即PHP脚本文件所在之目录)和/tmp/目录,可以防止php木马跨站,如果改了之后安装程序有问题,可注销此行,或者直接写上程序目录路径/var/www/html/www.osyunwei.com/:/tmp/
open_basedir = .:/tmp/

三、配置php-fpm

#备份原有配置文件
cp /etc/php-fpm.d/www.conf   /etc/php-fpm.d/www.confbak

#编辑
vi /etc/php-fpm.d/www.conf

#修改用户为nginx
user = nginx
#修改组为nginx
group = nginx

:wq

#############################################################################

测试篇
cd /var/www/html   #进入nginx默认网站根目录
vi  index.php   #新建index.php文件
<?php
phpinfo();
?>

:wq! #保存

#设置目录所有者
chown -R nginx:nginx /var/www/html
#设置目录权限
chmod -R  700 /var/www/html

在客户端浏览器输入服务器IP地址,可以看到相关的配置信息!

#############################################################################

备注
设置nginx默认站点目录是:/var/www/html
权限设置:
chown -R nginx:nginx /var/www/html

MySQL数据库目录是:
/var/lib/mysql
权限设置:
chown -R mysql:mysql  /var/lib/mysql

四、设置MYSQL
设置MYSQL密码
mysqladmin -u root password  'new passwd'
让mysql数据库更安全
此时会要求你输入刚刚设置的密码,输入后回车即可
选择Mysql数据库用户
        mysql -u root -p
 [删除test数据库]
        DROP DATABASE test;
 [删除匿名帐户]
        DELETE FROM mysql.user WHERE user ='';
 [重载权限]
         FLUSH PRIVILEGES;
#重启MySql
/etc/init.d/mysqld restart
#重启nginx
/etc/init.d/nginx  restart
#重启php-fpm
/etc/rc.d/init.d/php-fpm  restart
参考资料:
http://www.if-not-true-then-false.com/2010/install-apache-php-on-fedora-centos-red-hat-rhel/
http://www.myhack58.com/Article/sort099/sort0102/2014/42632_2.htm

 

Windows下mysql忘记root密码的解决方法

Mysql版本:5.+

 

 

1、 首先检查mysql服务是否启动,若已启动则先将其停止服务,可在开始菜单的运行,使用命令:

net stop mysql

 

 

 

打开第一个cmd窗口,切换到mysql的bin目录,运行命令:

mysqld --defaults-file="C:\Program Files\MySQL\MySQL Server 5.1\my.ini" --console --skip-grant-tables

注释:

该命令通过跳过权限安全检查,开启mysql服务,这样连接mysql时,可以不用输入用户密码。 

 

 

 

2、打开第二个cmd窗口,连接mysql:

输入命令:

mysql -uroot -p

出现:

Enter password:

在这里直接回车,不用输入密码。

然后就就会出现登录成功的信息,

 

 

使用命令:

show databases;

 

 

使用命令切换到mysql数据库:

use mysql;

使用命令更改root密码:

UPDATE user SET Password=PASSWORD('newpassword') where USER='root';

 

刷新权限:

FLUSH PRIVILEGES;

然后退出,重新登录:

quit

重新登录:

mysql -uroot -p

出现输入密码提示,输入新的密码即可登录:

Enter password: ***********

显示登录信息: 成功  就一切ok了

mysql查询本季度

今天

select * from 表名 where to_days(时间字段名) = to_days(now());

昨天

SELECT *FROM表名WHERE TO_DAYS( NOW( ) ) – TO_DAYS( 时间字段名) <= 1

7天

SELECT *FROM表名 where DATE_SUB(CURDATE(), INTERVAL 7 DAY) <= date(时间字段名)

近30天

SELECT *FROM表名 where DATE_SUB(CURDATE(), INTERVAL 30 DAY) <= date(时间字段名)

本月

SELECT *FROM表名 WHERE DATE_FORMAT( 时间字段名, ‘%Y%m’ ) = DATE_FORMAT( CURDATE( ) , ‘%Y%m’ )

上一月

SELECT *FROM表名 WHERE PERIOD_DIFF( date_format( now( ) , ‘%Y%m’ ) , date_format( 时间字段名, ‘%Y%m’ ) ) =1

#查询本季度数据
select * from `ht_invoice_information` where QUARTER(create_date)=QUARTER(now());
#查询上季度数据
select * from `ht_invoice_information` where QUARTER(create_date)=QUARTER(DATE_SUB(now(),interval 1 QUARTER));
#查询本年数据
select * from `ht_invoice_information` where YEAR(create_date)=YEAR(NOW());
#查询上年数据
select * from `ht_invoice_information` where year(create_date)=year(date_sub(now(),interval 1 year));

查询当前这周的数据
SELECT name,submittime FROM enterprise WHERE YEARWEEK(date_format(submittime,’%Y-%m-%d’)) = YEARWEEK(now());

查询上周的数据
SELECT name,submittime FROM enterprise WHERE YEARWEEK(date_format(submittime,’%Y-%m-%d’)) = YEARWEEK(now())-1;

查询当前月份的数据
select name,submittime from enterprise where date_format(submittime,’%Y-%m’)=date_format(now(),’%Y-%m’)

查询距离当前现在6个月的数据
select name,submittime from enterprise where submittime between date_sub(now(),interval 6 month) and now();

查询上个月的数据
select name,submittime from enterprise where date_format(submittime,’%Y-%m’)=date_format(DATE_SUB(curdate(), INTERVAL 1 MONTH),’%Y-%m’)

select*from`user`whereDATE_FORMAT(pudate,‘%Y%m‘)=DATE_FORMAT(CURDATE(),‘%Y%m‘) ;

select * from user where WEEKOFYEAR(FROM_UNIXTIME(pudate,’%y-%m-%d’)) = WEEKOFYEAR(now())

select*
fromuser
whereMONTH(FROM_UNIXTIME(pudate,‘%y-%m-%d‘))=MONTH(now())

select*
from[user]
whereYEAR(FROM_UNIXTIME(pudate,‘%y-%m-%d‘))=YEAR(now())
andMONTH(FROM_UNIXTIME(pudate,‘%y-%m-%d‘))=MONTH(now())

select*
from[user]
wherepudatebetween上月最后一天
and下月第一天

where date(regdate) = curdate();

select * from test where year(regdate)=year(now()) and month(regdate)=month(now()) and day(regdate)=day(now())

SELECT date( c_instime ) ,curdate( )
FROM `t_score`
WHERE 1
LIMIT 0 , 30