天道酬勤,唯爱学可成才 注册 | 登陆
浏览模式: 标准 | 列表全部文章

freebsd7下使用PORTS安装mysql

学校要弄服务器了,由我管理,所以我就选了FREEBSD。一直就喜欢它。

下面是FREEBSD7.0下使用PORTS安装mysql的一些记录。

» 阅读全文

Tags: freebsd, ports, mysql, 安装

减少PHP代码的几种方法

以及在上PHP课程了,在网上无意看到这些优秀的代码写法记下来。

1. 使用 || (or)&& (and) 操作代替 if.

2. 使用三元运算符...

» 阅读全文

Tags: php, 三元运算符

开始使用THINKPHP啦

从thinkphp的0.98版起偶便开始注意这个国内的开源PHP框架了,没别的原因,就因为它开源、强大、国产。

但是一个框架的强大与其复杂往往都是成正比的,thinkphp也不列外,为了使它好好地为偶工作,偶没少花时间看文档。

这里记录偶学习的点点滴滴。

详细就看全文吧。

» 阅读全文

Tags: thinkphp, 框架, php

为你的MySQL数据库加铸23道安全门

使用mysql,安全问题不能不注意。以下是mysql提示的23个注意事项:

  1.如果客户端和服务器端的连接需要跨越并通过不可信任的网络,那么就需要使用ssh隧道来加密该连接的通信。

  2.用set password语句来修改用户的密码,三个步骤,先“mysql -u root”登陆数据库系统,然后“mysql> update mysql.user set password=password('newpwd')”,最后执行“flush privileges”就可以了。

  3.需要提防的攻击有,防偷听、篡改、回放、拒绝服务等,不涉及可用性和容错方面。对所有的连接、查询、其他操作使用基于acl即访问控制列表的安全措施来完成。也有一些对ssl连接的支持。

  4.除了root用户外的其他任何用户不允许访问mysql主数据库中的user表;

  加密后存放在user表中的加密后的用户密码一旦泄露,其他人可以随意用该用户名/密码相应的数据库;

  5.用grant和revoke语句来进行用户访问控制的工作;

  6.不使用明文密码,而是使用md5()和sha1()等单向的哈系函数来设置密码;

  7.不选用字典中的字来做密码;

  8.采用防火墙来去掉50%的外部危险,让数据库系统躲在防火墙后面工作,或放置在dmz区域中;

  9.从因特网上用nmap来扫描3306端口,也可用telnet server_host 3306的方法测试,不能允许从非信任网络中访问数据库服务器的3306号tcp端口,因此需要在防火墙或路由器上做设定;

  10.为了防止被恶意传入非法参数,例如where id=234,别人却输入where id=234 or 1=1导致全部显示,所以在web的表单中使用''或""来用字符串,在动态url中加入%22代表双引号、%23代表井号、%27代表单引号;传递未检查过的值给mysql数据库是非常危险的;

  11.在传递数据给mysql时检查一下大小;

  12.应用程序需要连接到数据库应该使用一般的用户帐号,只开放少数必要的权限给该用户;

  $page_devide$

  13.在各编程接口(c c++ php perl java jdbc等)中使用特定‘逃脱字符’函数;

  在因特网上使用mysql数据库时一定少用传输明文的数据,而用ssl和ssh的加密方式数据来传输;

  14.学会使用tcpdump和strings工具来查看传输数据的安全性,例如tcpdump -l -i eth0 -w -src or dst port 3306 strings。以普通用户来启动mysql数据库服务;

  15.不使用到表的联结符号,选用的参数 --skip-symbolic-links;

  16.确信在mysql目录中只有启动数据库服务的用户才可以对文件有读和写的权限;

  17.不许将process或super权限付给非管理用户,该mysqladmin processlist可以列举出当前执行的查询文本;super权限可用于切断客户端连接、改变服务器运行参数状态、控制拷贝复制数据库的服务器;

  18.file权限不付给管理员以外的用户,防止出现load data '/etc/passwd'到表中再用select 显示出来的问题;

  19.如果不相信dns服务公司的服务,可以在主机名称允许表中只设置ip数字地址;

  20.使用max_user_connections变量来使mysqld服务进程,对一个指定帐户限定连接数;

  21.grant语句也支持资源控制选项;

  22.启动mysqld服务进程的安全选项开关,--local-infile=0或1 若是0则客户端程序就无法使用local load data了,赋权的一个例子grant insert(user) on mysql.user to 'user_name'@'host_name';若使用--skip-grant-tables系统将对任何用户的访问不做任何访问控制,但可以用 mysqladmin flush-privileges或mysqladmin reload来开启访问控制;默认情况是show databases语句对所有用户开放,可以用--skip-show-databases来关闭掉。

  23.碰到error 1045(28000) access denied for user 'root'@'localhost' (using password:no)错误时,你需要重新设置密码,具体方法是:先用--skip-grant-tables参数启动mysqld,然后执行 mysql -u root mysql,mysql>update user set password=password('newpassword') where user='root';mysql>flush privileges;,最后重新启动mysql就可以了。

» 阅读全文

Tags: mysql, 安全

TortoiseSVN 入门教程

1、下载SVN:
http://downloads.sourceforge.net/tortoisesvn/TortoiseSVN-1.4.8.12137-win32-svn-1.4.6.msi?download
安装过程很简单,安完后要重启

2、SVN没有软件界面,安装完后是在windows的右键菜单中添加SVN的操作的
下载FleaPHP项目试试:
随便新建一个空文件夹:E:\FleaPHP
空白处右键:

URL输入: svn://svn.fleaphp.org.cn/trunk/FleaPHP

点OK,就Check 下来了

3、在你修改过的文件夹或文件上右键:

出来的对话框Message处输入一些修改的记录,点OK就好了

 

超级重要的注意事项:

一旦一个文件夹成为了一个svn文件夹之后,不能用windows的删除随便的把这个文件夹删掉哦,必须在该文件夹上右键 TortoiseSVN->Delete 才行,移动也是一样的。

更详细的svn使用请查看 svn 文档:
http://tortoisesvn.net/docs/nightly/TortoiseSVN_zh_CN/

» 阅读全文

Tags: svn

zend 实用小技巧

1、自动格式化:选中要格式化的程序,按 ctrl + shift + f 就好了,我一般是按  ctrl + a 再 ctrl +shift +f

2、打开最近打开的文档 :ctrl + shift +r

3、把边上的窗口都收缩: esc

4、打开指定名字的文件:这个在工程很大的时候非常实用,ctrl + alt +g

5、转为小写:ctrl + L,转为大写:ctrl + U

» 阅读全文

Tags: zend, php

Linux下memcached缓存服务器的应用

摘要:由于数据库存储的数据量越来越大,查询速度也就变的越来越慢,因此就有了缓存服务器应用的必要,本文是介绍Memcached的安装以及简单的使用。

本文只介绍memcached的PHP的API,想查看其他关于Memcached的API文档案,请访问 http://www.danga.com/memcached/

目录


++++++++++++++++++++++++++++++++++++++++
正文
++++++++++++++++++++++++++++++++++++++++

一、环境需求
安装Memcached需要libevent库的支持,所以请在安装Memcached之前检查有没有安装libevent。测试环境还需要PHP的支持,本文假设PHP已经安装到/usr/local/php目录下,也就是在编译PHP的时候使用perfix参数指定目录(--prefix=/usr/local/php)

二、下载相关软件

Memcached下载地址:http://www.danga.com/memcached/
memcache PHP模块下载地址: http://pecl.php.net/package/memcache 推荐使用1.5版
libevent 下载地址: http://www.monkey.org/~provos/libevent/

本文不再讲述如何安装libevent

三、安装和配置

1、安装Memcached

 

root@tonyvicky:# tar vxzf memcached-1.1.12.tar.gz
root@tonyvicky:# cd memcached-1.1.12
root@tonyvicky:# ./configure --prefix=/usr/local/memcached
root@tonyvicky:# make
root@tonyvicky:# make install

 

安装完之后要启动服务

 

root@tonyvicky:# cd /usr/local/memcached/bin
root@tonyvicky:# ./memcached -d -m 50 -p 11211 -u root

 

参数说明 -m 指定使用多少兆的缓存空间;-p 指定要监听的端口; -u 指定以哪个用户来运行

2、安装memcache PHP模块

 

root@tonyvicky:# tar vxzf memcache-1.5.tgz
root@tonyvicky:# cd memcache-1.5
root@tonyvicky:# /usr/local/php/bin/phpize
root@tonyvicky:# ./configure --enable-memcache --with-php-config=/usr/local/php/bin/php-config --with-zlib-dir
root@tonyvicky:# make
root@tonyvicky:# make install

 

安装完后会有类似这样的提示:

 

Installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-non-zts-20050922/

 

把这个记住,然后修改php.ini,把

 

extension_dir = "./"

 

修改为

 

extension_dir = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20050922/"

 

并添加一行

 

extension=memcache.so

 

3、测试脚本

自己写一个PHP程序测试一下吧

<?php
$memcache
= new Memcache; //创建一个memcache对象
$memcache->connect('localhost', 11211) or die ("Could not connect"); //连接Memcached服务器
$memcache->set('key', 'test'); //设置一个变量到内存中,名称是key 值是test
$get_value = $memcache->get('key'); //从内存中取出key的值
echo $get_value;
?>

» 阅读全文

Tags: memcached, linux, 缓存, 服务器

VMware网卡设置介绍

VMware VMware Workstation 用了好几年了,也偶尔能弄好网络设置,但是概念含糊,今天找到详细说明,记下一笔。

(1)Bridged方式
用这种方式,虚拟系统的IP可设置成与本机系统在同一网段,虚拟系统相当于网络内的一台.独立的机器,与本机共同插在一个Hub上,网络内其他机器可访问虚拟系统,虚拟系统也可访问网络内其他机器,当然与本机系统的双向访问也不成问题.
(2)NAT方式
这种方式也可以实现本机系统与虚拟系统的双向访问.但网络内其他机器不能访问虚拟系统,虚拟系统可通过本机系统用NAT协议访问网络内其他机器.NAT方式的IP地址配置方法:虚拟系统先用DHCP自动获得IP地址,本机系统里的VMware services会为虚拟系统分配一个IP,之后如果想每次启动都用固定IP的话,在虚拟系统里直接设定这个IP即可.
(3)host-only方式
顾名思义这种方式只能进行虚拟机和主机之间的网络通信,即网络内其他机器不能访问虚拟系统,虚拟系统也不能访问其他机器.
(4)not use方式
既是不使用网络,虚拟系统为一个单机.
一般来说,Bridged方式最方便好用.但如果本机系统是win2000而网线没插(或者根本没有网卡),网络很可能不可用(大部分用PCI网卡的机器都如此),此时就只能用NAT方式或host-only,之前所说的那两块虚拟网卡就是适应这两种网络准备的.

» 阅读全文

Tags: vmware

Records:19912345678910»