标签归档:PHP

用phpMyadmin创建MySQL数据库及独立数据库帐号的图文教程

在一个服务器上一般来讲都不止一个站点,更不止一个MySQL(和PHP搭配之最佳组合)数据库。
为了防止安全隐患,我们一般针对每个数据库都设置了独立的数据库访问帐号,该帐号仅有访问该数据库的权限。下面就让我们来具体演示一下:

1、首先我们要登陆php(做为现在的主流开发语言)MyAdmin,不做演示。

2、创建一个数据库,如下图,在php(做为现在的主流开发语言)MyAdmin右边窗口中,填写数据库名称,点创建即可。 



例如我们这里创建一个名字为:cncmstest 的数据库

创建成功会有如下提示:

3、点击左上角的主页按钮,返回php(做为现在的主流开发语言)MyAdmin主界面:

4、在主界面的右边点击“权限”来创建数据库帐号。

5、在权限页面中,我们点击“添加新用户”

6、在该页面中,我们填写要创建的数据库用户名,该用户的访问范围,及密码。



如上图,我们填写了用户名为:cncmsuser,该数据库用户只允许本机访问,主机一项选择本地;密码我们使用自动生成的,点下面的“Generate”会生成一个随机密码,然后点“Copy”会自动填写到密码框中。

下面的框都不选,直接拉到页面最下面点执行即可创建一个新用户。

数据库用户创建成功,会返回如下页面:

7、最重要的一步,设置该用户的数据库访问权限

在数据库用户添加成功返回的页面中可以直接设置权限。这里我们选择按数据库指定权限:



如上图,在数据库列表中选择我们刚刚创建的cncmstest,即会自动进入该数据库的权限设置页面。



在上图的权限设置中,我们把“数据”、“结构”两列的权限全部选中,管理权限都不要选。点执行即可。

到这里,我们已经全部设置完毕了,创建了一个数据库:cncmstest,并创建了数据库用户cncmsuser,特别指定了该用户只对cncmstest的访问权限。如此,便达到了我们一开始所讲的目的:为每一个数据库指定独立的用户访问权限。

在WAMP环境启用GZIP

如果你只是在本地用WAMP(www.wampserver.com)开发网站,你可能并不需要开启gzip(当一个页面文件被请求时,服务器端会压缩这个文件来减少发送体积)。
不管怎么说,它还是很有用的,能让你在上传网站之前看到一个页面可能被你的实际服务器压缩了多少。
开启gzip实际上非常容易,但是我发现大多数已存的建议都是错的。下面说明我这里是如何实现的:
1,开启Apache的 deflate_module 和 headers_module。(译者注:这里采用了译者实际实现的方式。)
   去掉 #LoadModule headers_module modules/mod_headers.so 前面的注释#
   去掉 #LoadModule deflate_module modules/mod_deflate.so 前面的注释#
   上面两段如果配置文件中没有就自己加上。
2,编辑httpd.conf,在文件末尾,include文件之前加入如下片段(注意ifmodule标签之间的文字是一行,不要打断):
<ifmodule mod_deflate>
AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css text/javascript application/x-javascript application/javascript

</ifmodule>

或者改成:

php_value output_handler ob_gzhandler

AddOutputFilter DEFLATE html xml php js css

3, 重启服务。

Apache转发实现IIS和Apache共享80端口

因为只有一台服务器(Windows 2003 Server)既需要在上面跑ASP程序,又需要在上面跑PHP应用,又不想用IIS跑PHP应用,还有就是不想把ASP程序跑在Apache上,就需要一个Apache与IIS共存的方案。

IIS是Windows 2003 Server自带的IIS 6.0。
Apache是Apache 2.2.8。
首先当然是下载并安装Apache。
接着开始先把自动启动的IIS服务器停下来,修改IIS的端口为非80(比如81)。
再接着打开Apache的httpd.conf文件开始配置。
要让Apache支持转发也就是做IIS的代理那么就要先启用Apache的代理模块:
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_connect_module modules/mod_proxy_connect.so
LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
LoadModule proxy_http_module modules/mod_proxy_http.so
完成了代理模块的启用,那么我们开始配置虚拟主机。
先包含httpd-vhosts.conf文件
Include conf/extra/httpd-vhosts.conf
保存httpd.conf,打开httpd-vhosts.conf文件
开始配置虚拟机
NameVirtualHost *:80
<VirtualHost *:80>
    ServerAdmin b@b.com
    ServerName   
    DocumentRoot  "C:/Program Files/Apache Software Foundation/Apache2.2/htdocs"
</VirtualHost >
<VirtualHost *:80>
    ProxyPreserveHost On
    ServerName www.datarelab.com
    DefaultLanguage zh-CN
    AddDefaultCharset GB2312
    ProxyPass / http://www.datarelab.com:81
    ProxyPassReverse / http://www.datarelab.com:81
</VirtualHost>
配置完成并保存httpd-vhosts.conf。
开始重启Apache服务器和IIS服务器。
我们通过访问过去就会看到IIS的默认页面。

如何用PHP获取用户操作系统、浏览器、IP信息

如何修改MySQL密码及开启phpMyAdmin 同步功能

修改MySQL密码

进入CMD切换到MySQL 安装目录中
比如安装路径是D:\wamp\bin\mysql\mysql5.1.36\bin
前提:MySQL用户ROOT密码为空。
输入 mysql -u root mysql
mysql> 状态下输入 update user set password=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.00 sec)
mysql> 状态下输入 exit
退出 sql
重启MySQL
注意每个命令后都要加上一个分号 ";"
MySQL才开始执行该行命令
而第二个指令会让已载入记忆体的 MySQL系统资料库更新

重起 MySQL.
在更新ROOT密码后,以后要与MySQL 连接的方法为:

mysql -u root -p 新密码

如何使用phpMyAdmin管理数据库还要做相应的设置:
修改phpMyAdmin中MySQL ROOT的空改为新密码
例:d:\wamp\apps\phpmyadmin3.0.1.1下的config.inc文件中
$cfg['Servers'][$i]['password'] = ''改为
$cfg['Servers'][$i]['password'] = 'newpassword'

 

开启phpMyAdmin 同步功能

phpMyAdmin同步功能默认只有localhost,不能修改,这里需要在 config.inc.php里添加一个参数: