在windows vps主机上图解安装apache php和mysql

2009年01月22日

概述:本文详细描述如何在我们的windows系列vps主机上配置php环境,包括安装apache和php两个部分。

环境:我们的windows vps主机特惠型

步骤:

1、安装apache

首先安装apache服务,首先下载最新版本到windows  vps主机本地,我写此文章,apache最新版本为2.2.11 ,下载地址 我这里下载的是 apache_2.2.11-win32-x86-no_ssl.msi 无mod_ssl模块。双击下载的软件包 apache_2.2.11-win32-x86-no_ssl.msi,启动apache的安装程序,会显示下图所示

图1 apache安装欢迎页面

图1 apache安装欢迎页面

阅读这个条目剩下部分 »

在vps主机上快速配置lxadmin控制面板

2009年01月22日

Lxadmin是一个开源的VPS控制面板。免费、高效是是它的绝对优点。使用无管理服务VPS,选择Lxadmin不仅能降低VPS的使用费用,而且它让你控制VPS变得更加简单。

Lxadmin最新的5.0版支持Linux,未来的6.0将支持Windows。下面介绍一下如何安装使用Lxadmin。
如果使用的VPS的管理界面是HyperVM,从控制界面”Console”下的”Rebuild”可以快速重装系统。我装的是CentOS- i386-hostinabox,这其实就是集成了Lxadmin控制面板的CentOS,快速简单。如果你的主机上没有提供这个版本,而你又想使用免费 的Lxadmin,没关系,我来教你。先安装标准的CentOS5,然后用Putty连接终端,输入命令:

* wget http://download.lxlabs.com/downl … n-install-master.sh
* sh lxadmin-install-master.sh

国内主机可能安装要慢点了,因为是在线安装(更新源在国外),使用美国主机的朋友们很快就能安装完了。安装完后你除了安好Lxadmin,同时也基 本安好了Apache、Lighttpd、MySQL、Xcache、Bind、Djbdns等一系列服务器软件。下面我们完成后续安装,在终端完成 (/*这里面是备注,不要执行*/)。

* yum install php-bcmath /*高精度数学运算组件,默认没安装,MD5运算时用到*/
* yum check-update /*检查全部更新*/
* yum update /*更新全部更新*/
* yum clean all /*清理全部缓存的安装文件(都安装完了,留着浪费空间啊)*/

OK,基本完成,可以把终端关闭了。我们来登录Lxadmin,第一次登陆用户名和密码都是admin,地址:

* https://yourdomain:7777/ /*安全连接,不过默认证书不受IE信任*/
* http://yourdomain:7778/ /*还是用这个普通链接吧*/

一、选择要使用的服务器套件

Home -> Home -> Severinux -> SwitchProgram

服务器程序lighttpd的效率远远高于Apache,高手可以选择lighttpd(Rewrite规则和Apache不一样,有点麻烦,如果 你只用WordPress,请参考诡谲的文章)新手还是算了老老实实用Apache吧。Dns用djbdns,一个轻量级的高效DNS。

二、域名设置

Lxadmin控制面板有个特点,必须先设置DNS服务器,否则不能添加域名。其实设置了可以不用,大家可以随便设置。大家买的廉价VPS本来系统资源就不多,就不要再让它多负担了。不过,如何使用DNS还是要介绍的。

Home -> Home -> Resources -> DNS Templates

名称随便填,选择用于DNS服务的IP,下面两个DNS服务用域名一般填类似ns.youtdomain.com的格式(没有要求,习惯而已),添加就可以了。

我们以在Godaddy注册的域名为例,看看如何拥有自己的DNS服务器。首先进入域名管理界面,在Host Summary添加内容,域名就是刚才设好的DNS服务器的,IP同样是刚才填的。

将DNS服务器改为你自己的,这个不会的话自己查吧。

现在就可以添加域名了,添加后,系统会自动产生一个用户名为yourdomain.com密码同管理员密码的FTP账户。这个账户只能FTP对应域名的文件夹。还有一个admin的可以控制所有站点的。

开头说到安装完后占用空间很大,那是因为Lxadmin预置了各种网站程序供用户快捷安装。看了一下,软件版本都太老了,还是删除节省空间吧,位置/home/lxadmin/httpd/installsoft/

Lxadmin的使用就介绍到这里,我只是抛砖引玉,把疑惑最多的内容说一下,其余的自己学吧。

祝大家玩儿的愉快!!

在vps主机上mysql服务的效率调校/etc/my.cnf

2009年01月14日

概述:如果MySQL数据库系统有很多用户同时联机的话,很大的可能造成vps主机效率方面的瓶颈,虽然优化mysql服务器,有很多方法,例如SQL优化(使用索引、正则表达式)数据库对象优化(优化表的数据类型、通过拆分提高表的访问效率、逆规则化、使用中间表提高统计查询速度)磁盘I/O优化(使用磁盘阵列、使用虚拟文件卷LVM2或软RAID、使用Symbolic Links分布I/O,禁止操作系统更新文件的atime属性、使用裸设置)应用优化(使用连接池、减少对MYsql的访问、增加CACHE层、负载均衡)但是这些方法要不针对于数据库设置的优化、要不针对于操作系统级别或提升硬件环境的优化,对于我们的vps主机来讲,都用不上,那么最主要的还是优化mysql服务器,而优化mysql服务器本身,就是一个调校/etc/my.cnf的过程

环境vps linux 主机 centos5 操作系统   使用yum命令安装mysql数据库

我们这里假设我们的主机内存为128M ,数据库使用64M,关于数据库内存的设置,注意,内存的简单计算公式

key_buffer_size+(sort_buffer_size+read_buffer_size)*max_connections,且总量不能高于实际的物理内存量

其他64M给系统使用以及web服务使用 阅读这个条目剩下部分 »

在vps主机上找回mysql服务器root密码

2009年01月14日

概述: 最近有个vps客户,在配置LAMP的时候,修改了mysql服务器root密码,过几天忘了密码,问我如何才能找回来,下面我就详细讲讲如何找回root密码,分两种情况,一种mysql数据库资料不是很重要,可以删除,另外一种适合mysql服务器里面有重要的数据,不能初始化。
环境: linux vps主机 centos5 操作系统 使用yum安装的数据库,当然此解决办法同样适合其他linux发行版本

步骤:

1、mysql数据库资料不是很重要,找回root方法
阅读这个条目剩下部分 »

在vps主机上mysql数据库优化

2009年01月13日

概述:在linux vps主机上配置mysql数据库,由于默认使用yum安装的数据库启动了InnoDB引擎,同时其/etc/my.cnf配置都我们的vps主机不是很适合,本文详细讲解如何配置适合自己vps主机的mysql配置文件

目的:优化vps主机上的mysql数据库,使之更合适vps主机这样的环境

query_cache_size = 268435456
query_cache_type=1
query_cache_limit=1048576

查看mysql-server静态参数值命令
mysql>show variables;
或者mysqladmin -uroot variables
mysql服务器的参数很多,如果需要了解某个参数的详细定义,可以使用mysqld –verbose –help | more
查看mysql-server动态状态信息命令

mysql>show status;

或者mysqladmin -uroot status
其中show status分为show [session|global]status;可以根据需要加上参数“session”或者”global”来显示session级(当前统计)的统计结果和global级(自数据库上次启动至今)的统计结果,如果不写,默认为”session”

1、查看和修改默认的存储引擎,关闭不需要的存储引擎
在我们使用vps主机过程中,很多用户只使用MyISAM一个引擎,关闭那么没有使用的InnoDB MEMORY等其他引擎
查看当前系统有哪些引擎

mysql>SHOW ENGINES \G
或者第二种方法
mysql>SHOW VARIABLES LIKE 'have%';

查看默认引擎

mysql> show variables like 'table_type';
+---------------+--------+
| Variable_name | Value  |
+---------------+--------+
| table_type    | MyISAM |
+---------------+--------+
1 row in set (0.00 sec)
或者
mysql> show variables like 'storage_engine';
+----------------+--------+
| Variable_name  | Value  |
+----------------+--------+
| storage_engine | MyISAM |
+----------------+--------+
1 row in set (0.00 sec)

mysql默认的存储引擎是MyISAM,修改默认的存储引擎可以修改/etc/my.cnf参数文件,在[mysqld]字段里面增加default-storage-engine=innodb,这里假设设置默认为innodb,根据自己的需要进行设置,关闭不需要的存储引擎,可以修改/etc/my.cnf参数文件,在[mysqld]字段里面增加–skip-innodb。
2、调节key_buffer_size大小

mysql> show variables like 'key_buffer_size';
+-----------------+-----------+
| Variable_name   | Value     |
+-----------------+-----------+
| key_buffer_size | 402653184 |
+-----------------+-----------+
1 row in set (0.00 sec)
 
mysql>
从上面可以看到,key_buffer_size为:384M,可以修改/etc/my.cnf参数文件,在[mysqld]字段里面增加key_buffer_size = 384M,当然也可以使用mysql>set grobal key_buffer_size=512M修改。
此参数是用来<strong>设置索引块</strong>(Index Blocks)缓存的大小,它被所有的线程共享,只适合MyISAM存储引擎。

3、调节table_cache设置
这个参数表示数据库用户打开表的缓存数量,每个连接进来,都会至少打开一个表缓存,如此,table_cache与max_connections有关,
查看当前的table_cache值

mysql> show variables like 'table_cache';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| table_cache   | 4096  |
+---------------+-------+
1 row in set (0.00 sec)

从上面可以看到,table_cache为:4096,可以修改/etc/my.cnf参数文件,在[mysqld]字段里面增加table_cachee = 4096

4、调节query_cache设置

Query Cache 在提高数据库性能方面具有非常重要的作用,其设定也非常简单,仅需要在配置文件写入两行: query_cache_type 和 query_cache _size,而且 MySQL 的 query cache 非常快!而且一旦命中,就直接发送给客户端,节约大量的 CPU 时间。

当然,非 SELECT 语句对缓冲是有影响的,它们可能使缓冲中的数据过期。一个 UPDATE 语句引起的部分表修改,将导致对该表所有的缓冲数据失效,这是 MySQL 为了平衡性能而没有采取的措施。因为,如果每次 UPDATE 需要检查修改的数据,然后撤出部分缓冲将导致代码的复杂度增加。

query_cache_type :0 代表不使用缓冲, 1 代表使用缓冲,2 代表根据需要使用。

设置 1 代表缓冲永远有效,如果不需要缓冲,就需要使用如下语句:

SELECT SQL_NO_CACHE * FROM my_table WHERE …

如果设置为 2 ,需要开启缓冲,可以用如下语句:

SELECT SQL_CACHE * FROM my_table WHERE …

用 SHOW STATUS 可以查看缓冲的情况:

mysql> show status like 'Qca%';
+-------------------------+----------+
| Variable_name | Value |
+-------------------------+----------+
| Qcache_queries_in_cache | 8 |
| Qcache_inserts | 545875 |
| Qcache_hits | 83951 |
| Qcache_lowmem_prunes | 0 |
| Qcache_not_cached | 2343256 |
| Qcache_free_memory | 33508248 |
| Qcache_free_blocks | 1 |
| Qcache_total_blocks | 18 |
+-------------------------+----------+
8 rows in set (0.00 sec)

如果需要计算命中率,需要知道服务器执行了多少 SELECT 语句:

mysql> show status like 'Com_sel%';
+---------------+---------+
| Variable_name | Value |
+---------------+---------+
| Com_select | 2889628 |
+---------------+---------+
1 row in set (0.01 sec)

在本例中, MySQL 命中了 2,889,628 条查询中的 83,951 条,而且 INSERT 语句只有 545,875 条。因此,它们两者的和和280万的总查询相比有很大差距,因此,我们知道本例使用的缓冲类型是 2 。

而在类型是 1 的例子中, Qcache_hits 的数值会远远大于 Com_select 。 Qcache_not_cached是可以记录DML语句的数量的

vps主机上三种配置mysql服务器方法

2009年01月12日

概述:近几年来,开源数据库逐渐流行起来。由于具有免费使用、配置简单、稳定性好、性能优良等优点,开源数据库在中低端应用中占据了很大的市场份额,而Mysql正是开源数据库中的杰出代表,在linux环境中,mysql数据库在应用越来越广,本文详细讲解一下在vps主机上配置mysql-server的三种方法,分别为:rpm包(yum)、二进制包、源码包编译安装。

环境:vps主机实用性 centos5系统 (其他的linux 发行版也可以参考,但是rpm(yum)方法,请使用自己的包管理软件,例如:redhat的up2date

各安装包比较
阅读这个条目剩下部分 »