存档

文章标签 ‘香港vps’

MySQL 配置优化

2014年10月25日 没有评论

安装MySQL后,配置文件my.cnf在 /MySQL安装目录/share/mysql目录中,该目录中还包含多个配置文件可供参考,有my-large.cnf ,my-huge.cnf, my-medium.cnf,my-small.cnf,分别对应大中小型数据库应用的配置。win环境下即存在于MySQL安装目录中的.ini文件。

下面列出了对性能优化影响较大的主要变量,主要分为连接请求的变量和缓冲区变量。

1. 连接请求的变量:

1) max_connections
MySQL的最大连接数,增加该值增加mysqld 要求的文件描述符的数量。如果服务器的并发连接请求量比较大,建议调高此值,以增加并行连接数量,当然这建立在机器能支撑的情况下,因为如果连接数越多,介于MySQL会为每个连接提供连接缓冲区,就会开销越多的内存,所以要适当调整该值,不能盲目提高设值。

数值过小会经常出现ERROR 1040: Too many connections错误,可以过’conn%’通配符查看当前状态的连接数量,以定夺该值的大小。

show variables like ‘max_connections’ 最大连接数

show status like ‘max_used_connections’响应的连接数

如下:

mysql> show variables like ‘max_connections‘;

+———————–+——-+

| Variable_name | Value |

+———————–+——-+

| max_connections | 256  |

+———————–+——-+

mysql> show status like ‘max%connections‘;

+———————–+——-+

| Variable_name  | Value |

+—————————-+——-+

| max_used_connections | 256|

+—————————-+——-+

max_used_connections / max_connections * 100% (理想值≈ 85%)

如果max_used_connections跟max_connections相同 那么就是max_connections设置过低或者超过服务器负载上限了,低于10%则设置过大。

2) back_log
MySQL能暂存的连接数量。当主要MySQL线程在一个很短时间内得到非常多的连接请求,这就起作用。如果MySQL的连接数据达到max_connections时,新来的请求将会被存在堆栈中,以等待某一连接释放资源,该堆栈的数量即back_log,如果等待连接的数量超过back_log,将不被授予连接资源。

back_log值指出在MySQL暂时停止回答新请求之前的短时间内有多少个请求可以被存在堆栈中。只有如果期望在一个短时间内有很多连接,你需要增加它,换句话说,这值对到来的TCP/IP连接的侦听队列的大小。

当观察你主机进程列表(mysql> show full processlist),发现大量264084 | unauthenticated user | xxx.xxx.xxx.xxx | NULL | Connect | NULL | login | NULL 的待连接进程时,就要加大back_log 的值了。

默认数值是50,可调优为128,对于Linux系统设置范围为小于512的整数。

3) interactive_timeout
一个交互连接在被服务器在关闭前等待行动的秒数。一个交互的客户被定义为对mysql_real_connect()使用CLIENT_INTERACTIVE 选项的客户。

默认数值是28800,可调优为7200。

2. 缓冲区变量

全局缓冲:

4) key_buffer_size
key_buffer_size指定索引缓冲区的大小,它决定索引处理的速度,尤其是索引读的速度。通过检查状态值Key_read_requests和Key_reads,可以知道key_buffer_size设置是否合理。比例key_reads / key_read_requests应该尽可能的低,至少是1:100,1:1000更好(上述状态值可以使用SHOW STATUS LIKE ‘key_read%’获得)。

key_buffer_size只对MyISAM表起作用。即使你不使用MyISAM表,但是内部的临时磁盘表是MyISAM表,也要使用该值。可以使用检查状态值created_tmp_disk_tables得知详情。

举例如下:

mysql> show variables like ‘key_buffer_size‘;

+——————-+————+

| Variable_name | Value |

+———————+————+

| key_buffer_size | 536870912 |

+———— ———-+————+

key_buffer_size为512MB,我们再看一下key_buffer_size的使用情况:

mysql> show global status like ‘key_read%‘;

+————————+————-+

| Variable_name  | Value |

+————————+————-+

| Key_read_requests| 27813678764 |

| Key_reads   | 6798830 |

+————————+————-+

一共有27813678764个索引读取请求,有6798830个请求在内存中没有找到直接从硬盘读取索引,计算索引未命中缓存的概率:

key_cache_miss_rate =Key_reads / Key_read_requests * 100%,设置在1/1000左右较好

默认配置数值是8388600(8M),主机有4GB内存,可以调优值为268435456(256MB)。

5) query_cache_size
使用查询缓冲,MySQL将查询结果存放在缓冲区中,今后对于同样的SELECT语句(区分大小写),将直接从缓冲区中读取结果。

通过检查状态值Qcache_*,可以知道query_cache_size设置是否合理(上述状态值可以使用SHOW STATUS LIKE ‘Qcache%’获得)。如果Qcache_lowmem_prunes的值非常大,则表明经常出现缓冲不够的情况,如果Qcache_hits的值也非常大,则表明查询缓冲使用非常频繁,此时需要增加缓冲大小;如果Qcache_hits的值不大,则表明你的查询重复率很低,这种情况下使用查询缓冲反而会影响效率,那么可以考虑不用查询缓冲。此外,在SELECT语句中加入SQL_NO_CACHE可以明确表示不使用查询缓冲。

与查询缓冲有关的参数还有query_cache_type、query_cache_limit、query_cache_min_res_unit。

query_cache_type指定是否使用查询缓冲,可以设置为0、1、2,该变量是SESSION级的变量。

query_cache_limit指定单个查询能够使用的缓冲区大小,缺省为1M。

query_cache_min_res_unit是在4.1版本以后引入的,它指定分配缓冲区空间的最小单位,缺省为4K。检查状态值Qcache_free_blocks,如果该值非常大,则表明缓冲区中碎片很多,这就表明查询结果都比较小,此时需要减小query_cache_min_res_unit。

举例如下:

mysql> show global status like ‘qcache%‘;

+——————————-+—————–+

| Variable_name | Value  |

+——————————-+—————–+

| Qcache_free_blocks  | 22756  |

| Qcache_free_memory  | 76764704 |

| Qcache_hits      | 213028692 |

| Qcache_inserts     | 208894227 |

| Qcache_lowmem_prunes | 4010916 |

| Qcache_not_cached | 13385031 |

| Qcache_queries_in_cache | 43560 |

| Qcache_total_blocks | 111212  |

+——————————-+—————–+

mysql> show variables like ‘query_cache%‘;

+————————————–+————–+

| Variable_name      | Value  |

+————————————–+———–+

| query_cache_limit      | 2097152 |

| query_cache_min_res_unit  | 4096   |

| query_cache_size      | 203423744 |

| query_cache_type      | ON  |

| query_cache_wlock_invalidate | OFF  |

+————————————–+—————+

查询缓存碎片率= Qcache_free_blocks / Qcache_total_blocks * 100%

如果查询缓存碎片率超过20%,可以用FLUSH QUERY CACHE整理缓存碎片,或者试试减小query_cache_min_res_unit,如果你的查询都是小数据量的话。

查询缓存利用率= (query_cache_size – Qcache_free_memory) / query_cache_size * 100%

查询缓存利用率在25%以下的话说明query_cache_size设置的过大,可适当减小;查询缓存利用率在80%以上而且Qcache_lowmem_prunes > 50的话说明query_cache_size可能有点小,要不就是碎片太多。

查询缓存命中率= (Qcache_hits – Qcache_inserts) / Qcache_hits * 100%

示例服务器查询缓存碎片率=20.46%,查询缓存利用率=62.26%,查询缓存命中率=1.94%,命中率很差,可能写操作比较频繁吧,而且可能有些碎片。

每个连接的缓冲

6) record_buffer_size
每个进行一个顺序扫描的线程为其扫描的每张表分配这个大小的一个缓冲区。如果你做很多顺序扫描,你可能想要增加该值。

默认数值是131072(128K),可改为16773120 (16M)

7) read_rnd_buffer_size
随机读缓冲区大小。当按任意顺序读取行时(例如,按照排序顺序),将分配一个随机读缓存区。进行排序查询时,MySQL会首先扫描一遍该缓冲,以避免磁盘搜索,提高查询速度,如果需要排序大量数据,可适当调高该值。但MySQL会为每个客户连接发放该缓冲空间,所以应尽量适当设置该值,以避免内存开销过大。

一般可设置为16M

8) sort_buffer_size
每个需要进行排序的线程分配该大小的一个缓冲区。增加这值加速ORDER BY或GROUP BY操作。

默认数值是2097144(2M),可改为16777208 (16M)。

9) join_buffer_size
联合查询操作所能使用的缓冲区大小

record_buffer_size,read_rnd_buffer_size,sort_buffer_size,join_buffer_size为每个线程独占,也就是说,如果有100个线程连接,则占用为16M*100

10) table_cache
表高速缓存的大小。每当MySQL访问一个表时,如果在表缓冲区中还有空间,该表就被打开并放入其中,这样可以更快地访问表内容。通过检查峰值时间的状态值Open_tables和Opened_tables,可以决定是否需要增加table_cache的值。如果你发现open_tables等于table_cache,并且opened_tables在不断增长,那么你就需要增加table_cache的值了(上述状态值可以使用SHOW STATUS LIKE ‘Open%tables’获得)。注意,不能盲目地把table_cache设置成很大的值。如果设置得太高,可能会造成文件描述符不足,从而造成性能不稳定或者连接失败。

1G内存机器,推荐值是128-256。内存在4GB左右的服务器该参数可设置为256M或384M。

11) max_heap_table_size
用户可以创建的内存表(memory table)的大小。这个值用来计算内存表的最大行数值。这个变量支持动态改变,即set @max_heap_table_size=#

这个变量和tmp_table_size一起限制了内部内存表的大小。如果某个内部heap(堆积)表大小超过tmp_table_size,MySQL可以根据需要自动将内存中的heap表改为基于硬盘的MyISAM表。

12) tmp_table_size
通过设置tmp_table_size选项来增加一张临时表的大小,例如做高级GROUP BY操作生成的临时表。如果调高该值,MySQL同时将增加heap表的大小,可达到提高联接查询速度的效果,建议尽量优化查询,要确保查询过程中生成的临时表在内存中,避免临时表过大导致生成基于硬盘的MyISAM表。

mysql> show global status like ‘created_tmp%‘;

+——————————–+———+

| Variable_name   | Value |

+———————————-+———+

| Created_tmp_disk_tables | 21197 |

| Created_tmp_files   | 58  |

| Created_tmp_tables  | 1771587 |

+——————————–+———–+

每次创建临时表,Created_tmp_tables增加,如果临时表大小超过tmp_table_size,则是在磁盘上创建临时表,Created_tmp_disk_tables也增加,Created_tmp_files表示MySQL服务创建的临时文件文件数,比较理想的配置是:

Created_tmp_disk_tables / Created_tmp_tables * 100%

默认为16M,可调到64-256最佳,线程独占,太大可能内存不够I/O堵塞

13) thread_cache_size
可以复用的保存在中的线程的数量。如果有,新的线程从缓存中取得,当断开连接的时候如果有空间,客户的线置在缓存中。如果有很多新的线程,为了提高性能可以这个变量值。

通过比较 Connections和Threads_created状态的变量,可以看到这个变量的作用。

默认值为110,可调优为80。

14) thread_concurrency
推荐设置为服务器 CPU核数的2倍,例如双核的CPU, 那么thread_concurrency的应该为4;2个双核的cpu, thread_concurrency的值应为8。默认为8

15) wait_timeout
指定一个请求的最大连接时间,对于4GB左右内存的服务器可以设置为5-10。

3. 配置InnoDB的几个变量

innodb_buffer_pool_size

对于InnoDB表来说,innodb_buffer_pool_size的作用就相当于key_buffer_size对于MyISAM表的作用一样。InnoDB使用该参数指定大小的内存来缓冲数据和索引。对于单独的MySQL数据库服务器,最大可以把该值设置成物理内存的80%。

根据MySQL手册,对于2G内存的机器,推荐值是1G(50%)。

innodb_flush_log_at_trx_commit

主要控制了innodb将log buffer中的数据写入日志文件并flush磁盘的时间点,取值分别为0、1、2三个。0,表示当事务提交时,不做日志写入操作,而是每秒钟将log buffer中的数据写入日志文件并flush磁盘一次;1,则在每秒钟或是每次事物的提交都会引起日志文件写入、flush磁盘的操作,确保了事务的ACID;设置为2,每次事务提交引起写入日志文件的动作,但每秒钟完成一次flush磁盘操作。

实际测试发现,该值对插入数据的速度影响非常大,设置为2时插入10000条记录只需要2秒,设置为0时只需要1秒,而设置为1时则需要229秒。因此,MySQL手册也建议尽量将插入操作合并成一个事务,这样可以大幅提高速度。

根据MySQL手册,在允许丢失最近部分事务的危险的前提下,可以把该值设为0或2。

innodb_log_buffer_size

log缓存大小,一般为1-8M,默认为1M,对于较大的事务,可以增大缓存大小。

可设置为4M或8M。

innodb_additional_mem_pool_size

该参数指定InnoDB用来存储数据字典和其他内部数据结构的内存池大小。缺省值是1M。通常不用太大,只要够用就行,应该与表结构的复杂度有关系。如果不够用,MySQL会在错误日志中写入一条警告信息。

根据MySQL手册,对于2G内存的机器,推荐值是20M,可适当增加。

innodb_thread_concurrency=8

推荐设置为 2*(NumCPUs+NumDisks),默认一般为8

Win2003下Apache性能优化

2014年9月12日 没有评论

一直习惯在Solaris和linux下跑amp,前些时服务器硬盘坏掉,所以启用新服务器。新系统是Windows 2003 Server,在上面按Unix上的经验配置Apache和Mysql时问题多多,经过折腾,总算是让服务器稳定下来,总结问题和解决办法如下(apache2.2.8+Mysql5.0.51a+php5.2.5):

1、Apache线程数和超时设置

Apache的线程数控制文件为conf/exrtra/http-mpm.conf,需要在httpd.conf中将 Include conf/extra/httpd-mpm.conf前#去掉,以使得http-mpm.conf生效。

在Windows系统中,起作用的是Winnt mpm段,


ThreadsPerChild 150
MaxRequestsPerChild 0

缺省的配置一般够用,但负荷大的网站就要修改了,否则网站一下就变慢或没有响应了。实际可以根据apache-status查看apache实时连接状态,我的服务器最后设置如下:


ThreadsPerChild 350
ThreadLimit 350
MaxRequestsPerChild 10000

Win32DisableAcceptEx
EnableMMAP Off
EnableSendfile Off

其中ThreadLimit是占用系统线程数限制,最好加上,否则会产生内存溢出导致Apache当掉。

MaxRequestsPerChild我理解是请求的缓存数,太小了影响性能,占用cpu时间,太大了占用内存资源,想象一下你网站的文件个数,然后自己设定,只要不为0就可以,防止内存溢出。

ThreadsPerChlid是apache的线程数,就是开了这么多的线程来等待响应客户端请求,需要根据apache-status实时的监控调节,大了会占用过多内存,小了会导致连接不上。而且应该同时修改httpd-default.php超时设置来配合。

在httpd.conf中去掉Include conf/extra/httpd-default.conf前的#以使httpd-default.php生效。

其中调节以下参数

Timeout 15 (连接超时缺省为300,太大了,缩小会减少同时连接数,即上面占用的实际线程数)

KeepAlive On (开启可以提高性能,因为一个页面一般会有多个请求)

MaxKeepAliveRequests 50 (这个数目自己根据网页内容调节)

KeepAliveTimeout 5 (这个小于Timeout就行)

Windows下长期运行Apache还是不如Unix稳定,可以让Apache在凌晨人少时自动重启,用Windows的计划任务可以非常方便的实现这一点,这样网管基本上可以安心睡觉了。

PhpStudy开启Apache的gzip压缩功能

2014年9月10日 没有评论

PhpStudy是一款非常方便的搭建PHP动态网站或者服务器的国产集成软件包,包含apache、mysql、php等。可以到其官方网站查看并且下载。
注意这里的PhpStudy是Apache+php解决方案,另外一个PhpFind是Nginx+php解决方案。由于Apache的使用较多些,以下的所有示例均是针对Apache,当然,只要是Apache,不管是自己独立安装,还是选择象我这样的懒人方式,集成式一键安装。配置均相同。
gzip是GNUzip的缩写,它是一个GNU自由软件的文件压缩程序。当服务器开启gzip压缩功能以后,当有人访问服务器的网站时,服务器将网页内容压缩后传输到来访的电脑浏览器,浏览器进行解压再显示出来。一般对纯文本内容可压缩到原大小的70%甚至更高。
以前介绍过如何开启SAE的gzip压缩功能,以及Typecho的gzip压缩,另外还有tomcat的gzip的压缩。本文主要讲述如何开启Apache的gzip压缩功能。
要让apache支持gzip功能,要用到deflate_Module和headers_Module。打开apache的配置文件httpd.conf,大约在105行左右,找到以下两行内容:(这两行不是连续在一起的)

1
2
#LoadModule deflate_module modules/mod_deflate.so   
#LoadModule headers_module modules/mod_headers.so

然后将其前面的“#”注释删掉,表示开启gzip压缩功能。开启以后还需要进行相关配置。在httpd.conf文件的最后添加以下内容即可:

1
2
3
4
<IfModule deflate_module>  
    #必须的,就像一个开关一样,告诉apache对传输到浏览器的内容进行压缩   
    SetOutputFilter DEFLATE   
</IfModule>

最少需要加上以上内容,才可以生gzip功能生效。由于没有做其它的额外配置,所以其它相关的配置均使用Apache的默认设置。这里说一下参数“DeflateCompressionLevel”,它表示压缩级别,值从1到9,值越大表示压缩的越厉害。
注意,这里要强调一个地方,我是通过搜索引擎找到相关文章进行设置的,而这些文章可能是来回复制的,有错误都不知道,如果你也按照那些做法去做,八层是出错,直接Apache都启动不了。究其原因,主要是有个参数不匹配。在上面去掉注释的“#”,即:

1
LoadModule deflate_module modules/mod_deflate.so

这里以后会用到中间的名称,即deflate_module。后续开启gzip压缩中要使用该名称,即:

1
2
3
4
<IfModule deflate_module>  
      ......   
      ......   
</IfModule>

这两个deflate_module必须一致。网络上其它很多文章,都是不一致的,所以直接报错。
下面是另一个典型配置,供参考。这里不建议将图片视频等多媒体文件进行gzip压缩,一般只压缩纯文本格式的文件,如.php、.txt、.html、.css、.js等。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<IfModule deflate_module>  
    #必须的,就像一个开关一样,告诉apache对传输到浏览器的内容进行压缩   
    SetOutputFilter DEFLATE   
 
    #压缩级别,1-9,9为最高   
    DeflateCompressionLevel 9      
 
    #不进行压缩的文件   
    SetEnvIfNoCase Request_URI \.(?:gif|jpeg|png)$ no-gzip dont-vary #设置不对后缀gif,jpg,jpeg,png的图片文件进行压缩   
    SetEnvIfNoCase Request_URI \.(?:exe|tgz|zip|bz2|sit|rar)$ no-gzip dont-vary #同上,就是设置不对exe,tgz,gz。。。的文件进行压缩   
    SetEnvIfNoCase Request_URI \.(?:pdf|mov|avi|mp3|mp4|rm)$ no-gzip dont-vary     
 
    #针对代理服务器的设置   
    <IfModule headers_moudle>  
    Header append vary User-Agent   
    </IfModule>  
</IfModule>

服务器重启后mysql服务启动得很慢的解决办法

2014年5月9日 没有评论

今天帮客户处理问题时遇到了一个非常郁闷的问题。

服务器重启后,mysql老是连接不上.网站打不开.要等上几十分钟甚至几小时MYSQL才能启动完。
并且服务器远程桌面也非常慢。经常卡死。

查了很久发现原来是C:\windows\temp下面存在大量的临时文件导致mysql启动缓慢,原因是长时间没有清理导致临时文件过多,影响到了mysql的正常启动。既然找到原因了就好下手解决问题。

经过如下方式处理后,mysql正常启动了!

开始——运行,输入CMD

然后再输入 del c:\windows\temp\*.* /s /q 回车。

就会自动删除C:\windows\temp下面所有的临时文件。

如果是Windows系统还可以使用以下方法解决。
MySQL Server目录下,打开my.ini,查找[mysqld],在其下加一行

tmpdir=”C:/mysql_temp/”

C:/mysql_temp/自己建立,这个作为mysql的临时目录。
该目录的权限仅为
Administrators:完全控制
SYSTEM:完全控制
即可。(假设你的mysql服务启动用户为”本地系统账户”)

让你的网站实现301重定向

2014年5月8日 没有评论

本文档用于帮助部分因空间不支持301重定向而困扰的用户提供解决办法。
该解决办法的前提:
空间必须支持伪静态,也就是mod_rewrite模块,这点应该绝大部分空间商都支持,如果你是自己搭建的服务器,可以到网上直接搜索301重定向需要的设置。
搞清楚你服务器环境的类型,你登录网站后台,系统配置-系统信息,下面有PHP环境,务必搞清楚是IIS还是apache。
以下是实现办法:
IIS下利用伪静态httpd.ini来实现301重定向
一、没有在后台开启伪静态,使用的是静态页面或动态页面
[ISAPI_Rewrite]
# 3600 = 1 hour
CacheClockRate 3600
RepeatLimit 32
RewriteCond Host: ^vps12.com$
RewriteRule (.*) http://www.vps12.com$1 [I,RP]
新建一个文本文档,把文件名以及后缀修改为:httpd.ini (windows系统一般要设置可见文件后缀或才能修改真正的文件后缀)
把上面的代码粘贴到httpd.ini文件中,且务必仔细将以上代码做修改,把vps12.com改成你的域名,如abc.com,注意.前面的也需要(最下面两行都需要做一样的修改)。
保存后,登录FTP,将该文件上传到你网站的根目录,然后就大功告成,访问网站试试吧!
二、如果在网站后台开启了伪静态
登录FTP,找到根目录下的httpd.ini文件,下载到本地,编辑该文件,在第4行 RepeatLimit 32 下新起一行(注意不要动下面的代码),把下面这段复制粘贴到新起的那行:
RewriteCond Host: ^vps12.com$
RewriteRule (.*) http://www.vps12.com$1 [I,R]
然后,务必把vps12.com修改为你的域名,如abc.com,注意.前面的也需要。
保存后,登录FTP,将该文件上传覆盖到你网站的根目录,然后就大功告成,访问网站试试吧!

apache下利用.htaccess来实现301重定向
一、没有开启伪静态功能
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www.vps12.com$ [NC]
RewriteRule ^(.*)$ http://www.vps12.com/$1 [L,R=301]
新建一个文本文档,把文件名以及后缀修改为:.htaccess (windows系统一般要设置可见文件后缀或才能修改真正的文件后缀)
把上面的代码粘贴到.htaccess文件中,且务必仔细将以上代码做修改,把vps12.com改成你的域名,如abc.com。
保存后,登录FTP,将该文件上传到你网站的根目录,即可。
二、开启了伪静态功能
登录FTP,找到根目录下的.htaccess文件,下载到本地,编辑该文件,在第1行 RewriteEngine On 下新起一行(注意不要动下面的代码),把下面这段复制粘贴到新起的那行:
RewriteCond %{HTTP_HOST} !^www.vps12.com$ [NC]
RewriteRule ^(.*)$ http://www.vps12.com/$1 [L,R=301]
然后,务必把vps12.com修改为你的域名,如abc.com。
保存后,登录FTP,将该文件上传覆盖到你网站的根目录,即可。

各版本linux及unix升级ssh及ssl方法及解决方案

2014年4月24日 没有评论

2014年的4月注定不是个安稳的月份。经网络大报出ssh及ssl漏洞后。请大家放心:我司的云架构之前使用 OpenSSL 1.0.0 版本,现在已经升级到 OpenSSL 1.0.1g。这两个分支版不受本次漏洞影响。

此外,我们的云架构底层防火墙还专门针对 SSL 的默认端口做了底层加固,过滤tcp22和443端口的数据包,匹配包头为攻击类型的数据包则丢弃。

因此,只要您的云主机仍然在使用 SSL 协议的默认端口,即使有的云主机上有 SSL 漏洞,也不会受到很大影响。

如果您修改了 SSL 协议的默认端口,或是有其他平台上的云主机或是物理服务器,我们建议您可以通过以下地址检测这些主机上的网站:

http://possible.lv/tools/hb/

如果检测出问题,您可以这样修复。

针对 Debian 和 Ubuntu 系统:
# apt-get update
# apt-get install openssl libssl1.0.0

针对CentOS:
# yum update openssl

如果您使用的是openSUSE:
# zypper in -t patch openSUSE-2014-277

修复完成后,必须要重新 Web 服务:
重启 Apache: # /etc/init.d/apache2 restart
重启 Nginx: # /etc/init.d/ngnix restart
重启 Httpd: # /etc/init.d/httpd restart

这样就可以了。

如果有任何与安全相关的问题,欢迎您联系我们的客服工程师。

服务器及电脑开机无反应主要解决方法及思路分析

2014年3月30日 没有评论

故障现象一:打开电源,按下开机按钮后,电脑无任何动静。

分析:此时电源应向主板和各硬件供电,无任何动静说明是供电部分出了问题。(包括主板电源部分)

检查思路和方法:

1、市电电源问题,请检查电源插座是否正常,电源线是否正常。

2、机箱电源问题,请检查是否有5伏待机电压,主板与电源之间的连线是否松动,如果不会测量电压可以找个电源调换一下试试。

3、主板问题,如果上述两个都没有问题,那么主板故障的可能性就比较大了。首先检查主板和开机按钮的连线有无松动,开关是否正常。可以将开关用电线短接一下试试。如不行,只有更换一块主板试试了。(注意:应尽量找型号相同或同一芯片组的板子,因为别的主板可能不支持你的CPU和内存)

故障现象二:按下开机按钮,风扇转动,但显示器无图象,电脑无法进入正常工作状态。

分析:风扇转动说明电源已开始供电,显示器无图象,电脑无法进入正常工作状态说明电脑未通过系统自检,主板BIOS设定还没输出到显示器,故障应出在主板,显卡和内存上。但有时劣质电源和显示器损坏也会引起此故障。

检查思路和方法:

1、如果有报警声,说明自检出了问题。报警声是由主板上的BIOS设定的。BIOS有两种,分别为AMI和AWARD。大多数主板都是采用AWARD的BIOS。

AWARD的BIOS设定为:
长声不断响:内存条未插紧。
一短:系统正常启动。
两短:CMOS设置错误,需重新设置。
一长一短:内存或主板错误。
一长两短:显示器或显卡错误。
一长三短:键盘控制器错误。
一长九短:主板BIOS的FLASH RAM或EPROM错误。

AMI的BIOS设定为:
一短:内存刷新故障。
两短:内存ECC校验错误。
三短:系统基本内存检查失败。
四短:系统时钟出错。
五短:CPU出现错误。
六短:键盘控制器错误。
七短:系统实模式错误。
八短:显示内存错误。
九短:BIOS芯片检验错误。
一长三短:内存错误。
一长八短:显示器数据线或显卡未插好。

2、如果没有报警声,可能是喇叭坏了,请按下列步骤进行。

A、检查内存,将内存取出用橡皮将插脚擦干净,换个插槽插实试机。如果有两根以上的内存共用的,请只用一根内存试机。

B、检查显卡,检查显卡是否插实,取出后用橡皮将插脚擦干净安装到位后再试机。然后将显卡与显示器连线拔掉再试机,看是否进入下一步自检。如有可能更换一个显卡试试。

C、检查主板,首先将主板取出放在一个绝缘的平面上(如书或玻璃),因为有时机箱变形会造成主板插槽与板卡接触不良。检查主板各插槽是否有异物,插齿有没有氧化变色,如果你发现其中的一两个插齿和其他的插齿颜色不一样,那肯定是氧化或灰尘所致,请用小刀将插齿表面刮出本色,再插上板卡后试机。然后检查主板和按钮之间的连线是否正常,特别是热启动按钮。最后,用放电法将BIOS重置试试。方法是将主板上的钮扣电池取下来,等五分钟后再装上,或直接将电池反装上两秒钟再重新装好,然后试机看是否正常。如果有条件更换一块主板试试。
D、检查CPU,如果是CPU超频引起的故障,那么上面将BIOS重置应该会解决这个问题,如果没超频那么检查风扇是否正常,实在不行更换CPU试一下。

E、电源不好也会出现这种现象,有条件更换电源试试。

F、如果上边讲的方法无法解决问题,请将除CPU,主板,电源,内存,显卡之外的硬件全部拔下,然后试机看是否正常。如果正常,在排除电源和主板出现问题的可能性之后,用下面故障现象四的方法解决。如果试机不正常,那么将这几个元件分别更换试试。

故障现象三:开机后,显示器无图像,但机器读硬盘,通过声音判断,机器已进入操作系统。

分析:这一现象说明主机正常,问题出在显示器和显卡上。

检查思路和方法:检查显示器和显卡的连线是否正常,接头是否正常。如有条件,更换显卡和显示器试试。

故障现象四:开机后已显示显卡和主板信息,但自检过程进行到某一硬件时停止。

分析:显示主板和显卡信息说明内部自检已通过,主板,CPU,内存,显卡,显示器应该都已正常(但主板BIOS设置不当,内存质量差,电源不稳定也会造成这种现象)。问题出在其他硬件的可能性比较大。(一般来说,硬件坏了BIOS自检只是找不到,但还可以进行下一步自检,如果是因为硬件的原因停止自检,说明故障比较严重,硬件线路可能出了问题)。

检查思路和方法:

1、解决主板BIOS设置不当可以用放电法,或进入BIOS修改,或重置为出厂设置(查阅主板说明书就会找到步骤)。关于修改方面有一点要注意,BIOS设置中,键盘和鼠标报警项如设置为出现故障就停止自检,那么键盘和鼠标坏了就会出现这种现象。

2、如果能看懂自检过程,那么一般来说,BIOS自检到某个硬件时停止工作,那么这个硬件出故障的可能性非常大,可以将这个硬件的电源线和信号线拔下来,开机看是否能进入下一步自检,如可以,那么就是这个硬件的问题。

3、如果看不懂自检过程,请将软驱,硬盘,光驱的电源线和信号线全部拔下来,将声卡,调制解调器,网卡等板卡全部拔下(显卡内存除外)。将打印机,扫描仪等外置设备全部断开,然后按硬盘,软驱,光驱,板卡,外置设备的顺序重新安装,安装好一个硬件就开机试,当接至某一硬件出问题时,就可判定是它引起的故障。
故障现象五:通过自检,但无法进入操作系统。

分析:这种现象说明是找不到引导文件,如果不是硬盘出了问题就是操作系统坏了。

检查思路和方法:

1、检查系统自检时是否找到硬盘,如看不懂自检可以用启动盘重试,放入带光牒启动的光盘或启动软盘,将BIOS内设置改为由光驱(软驱)引导。重新开机进入A盘后,打入“C:”回车
2、如能进入C盘,说明操作系统出问题。重新安装操作系统;
3、如不能进入C盘,说明硬盘或者分区表损坏。用分区软件判断是否可以分区,如不可以分区说明硬盘坏了,反之是分区表损坏。重新分区可以解决故障。

故障现象六:进入操作系统后不久死机。

分析:进入操作系统后死机的原因很多,这里只探讨硬件问题,从硬件方面考虑。问题应出在内存、电源、CPU、和各个硬件的散热这几个方面。

检查思路和方法:

1、打开机箱,观察显卡,CPU电源的风扇是否都正常转动,散热片上是否灰尘较多,机箱内是否较脏(如果清理灰尘一定要停电进行)。用手摸硬盘是否较热,正常状态比手微热。如果烫手,可以确定硬盘有问题。

2、如CPU超频,请降频使用。

3、电源,内存和主板质量不好引起的故障只能通过分别调换后试机来确定。
系统打开了以后 风扇有转动 灯也亮了 就是显示屏没显示出来 显示屏的 灯也还是跟没开机一样 一闪一闪的 怎么办
先把主机后面的插上去的线全部拔掉,
按开机按钮15下,这样做是给主机放静电,有时候天气变化会有静电引起这问题。
把那些线头按原来的样子插回去,开机看看是不是正常,如果还不行,接着往下看。

再从硬件着手:
1拔掉电源,
2拆开机箱,
3压一压插在主板上的内存和卡片
4注意看一下主板的电容是不是有爆浆的现象--有的话就要送修了
5开机看看,如果正常的话,就用吧!还不正常,那么送修吧

在线测试网络及服务器速度带宽的网站

2014年3月26日 没有评论

anet測試連線速度

http://speed.anet.net.tw/result.php

来自台湾的在线测试。

Speedtest.net by Ookla – The Global Broadband Speed Test

http://www.speedtest.net/

这个使用的比较多也比较出名。可以测试上行和下午速度及带宽的大小。推荐。

aspjpeg2.0注册码 aspjpeg破解版 安装及配置对应权限

2014年1月7日 没有评论

aspjpeg组件

下载完成之后按正常的软件安装顺序安装

aspjpeg 2.0 注册码sn:48958-77556-02411

注意:序号为:48958-77556-02411

在提示是否重启IIS时选择“否”,可以安装在任意盘符下面

安装完毕后:

从aspjpeg2.0 的安装目录的BIN[默认:C:\Program Files\Persits Software\AspJpeg\Bin]复制aspjpeg.dll到系统文件加的system32目录

运行regsvr32 c:/windows/system32/aspjpeg.dll (根据你的系统改你的目录)

检测是否注册成功的方法:

将以下代码保存为asp,拷贝在服务器上,用浏览器打开,看返回结果。

<%

set jpeg=server.createobject("persits.jpeg")

response.write jpeg.expires

'检测aspjpeg的注册状态

'注册成功则到期时间为:9999-9-9

'否则为:安装日期加1个月期限

%>

对应目录权限设置Everyone

VMware虚拟机的NAT不能上网的解决办法

2014年1月5日 没有评论

症状:
使用NAT模式能ping通,但是就是开不了网页。

解决办法:

1、首先要设置一下 虚拟机系统为NAT上网方式
2、然后在主机的“本地连接”设置共享给“本地连接3”(也有可能是本地连接4,主要是看NAT使用的是哪个网卡),如果是pppoe登录方式,就把宽带连接共享

3、设置“本地连接3”的属性,DNS要填写一个可以用(也可不填写,最好写上),然后记住IP地址

4、接下来到虚拟机系统里设置本地连接

虚拟机主机设的“网关”就是物理主机的“本地连接3”的IP地址,“子网掩码”跟物理主机的“本地连接3”的一样,一般为255.255.255.0,虚拟机的IP保证是一个C段即可

一般是192.168.2.128之类的

然后最后这步,是最关键的。很多win2008和win7之类的架好vm后无法用nat方式虚拟机能ping通域名,但无法上网就是因为没有设置网卡共享。我们设置网卡共享 然后选择 VMnet8那个网卡就可以解决问题。对应ip一定要对哦。