手机浏览 RSS 2.0 订阅 膘叔的简单人生 , 腾讯云RDS购买 | 超便宜Qcloud , 注册 | 登陆
浏览模式: 标准 | 列表Tag:优化

如何优化VMware Server虚拟机系统[值得收藏]

原文来自:http://server.zdnet.com.cn/server/2008/0910/1117939.shtml

我也是在操作vmware server版的时候才找到的此文章,它给我带来了很多思路,比如把网卡改为其他型号的。原来这都是我没有想过的。

  在现实情况中,许多商业程序只能分别在Windows或Linux下运行。那么,如何在同一台主机上运行Windows和Linux两种系统, 以支持尽可能多的应用软件,就成了一个重要的课题。VMware Server虚拟机模拟软件的出现为解决这一问题提供了不错的方法,它可以同时运行Linux和Windows等其它操作系统,且每个操作系统在各自独立 的窗口里运行。

  不过,尽管可以在Windows主机下运行VMware Server,但不推荐这么做——Windows的蓝屏死机会让Windows主机和Linux虚拟机系统同时挂掉,所以我们选择在Linux下运行虚拟 软件。这种模拟能帮助Windows用户容易地过渡到Linux,它让用户在使用新的Linux应用程序时就像在使用熟悉的Windows应用一样,且用 户不需要关心它是运行在Linux下还是Windows下。

  当前,VMware主要有三个版本:VMware Server、VMware Workstation和VMware ACE。VMware Server是免费的,它给Linux提供了多操作系统功能。VMware Workstation和VMware ACE为程序开发人员提供额外功能,例如给一台虚拟机分配多个CPU,给虚拟机设置安全策略。

  主流x86多系统的选择

  虽然在Linux下运行Windows或其它操作系统应用有几种方法,但我觉得VMware Server是最符合我的要求的。当然,所有的模拟软件都会降低性能,并且消耗更多的内存。所以,我的测试系统配备的是Athlon3500+的 CPU,1GB DDR2的内存——VMware在Duron 1800、512M DRAM和3GB的虚拟内存(交换文件)下也能运行得不错;但如果同样是Duron 1800的CPU,只配置1GB的虚拟内存(交换文件),运行起来就不太流畅了。另外,如果有硬件虚拟化支持(如Intel VT和AMD-V)就更好了,但对VMware Server来说这并不是必需的。

  其他几种运行外部操作系统应用的方法及其特性与限制如下表所示:

  Vmware的系统优化

  在不同的Linux版本中安装VMware Server有细微的差别。注意,本文的重点不在于如何安装VMware Server软件,而是要告诉你如何优化系统,使VMware Server更有效地工作。

  首先,我们从http://www.vmware.com/download/server/下载VMware Server(下载时需要提供注册号码),从http://ftp.cvut.cz/VMware/VMware-any-any- update105.tar.gz可以下载各种补丁,包含一些支持VMware Server的内核模块。注意,当运行VMware的配置脚本时,会提示你输入VMware设备的目录名称,把/var/lib/VMware /Virtual Machines改成/var/lib/Virtual_Machines。因为如果有空格,在用命令行应用程序访问时会有很多麻烦。另外,当在虚拟机配 置向导里提示输入虚拟机名称时,也不要带空格,如要用Windows_98代替Windows 98。

  不论VMware虚拟机系统依赖什么配置,运行起来和在物理机器本地运行是一样的。比如,假设USB有问题,则在Windows控制面板里,找到系统、设备,就能看到跟物理机器安装时一样的错误图标。其它如音频、网络、视频以及各类驱动问题也是一样。

  如果你以前安装过VMware Server(你可能只是升级下主机系统或者换个Linux版本),只要把.vmx和.vmdk文件放到相应的地方,如/var/lib/VMware /Virtual_Machines/,然后改变文件的所有者属性和访问权限。从VMware Server控制台选择VM菜单,安装VMware Tools,能提高速度和稳定性,也能让你访问VMware音频和视频驱动。

  虚拟以太网卡的配置

  我们可以通过虚拟以太网卡在虚拟机和主机之间传输文件,系统默认提供的网卡是AMD PCNet PCI网卡,传输速率大约是400Kbps,换成Pro1000的网卡,能提高到3Mbps。VMware Server的虚拟以太网卡在vmx配置文件里就是一行文本,跟实际网卡一样,它也需要驱动程序。如果驱动程序位于C盘下的好几级目录中(如下图),那你 应该创建一个快捷方式放在C盘根目录下,这样安装驱动时就不用找来找去了。

  进入/var/lib/VMware/Virtual_Machine/Windows_98。用一个文本编辑工具打开.vmx文件,在 Ethernet那一节的第一行前插入:ethernet0.virtualDev = e1000。保存文件,退出。然后,启动虚拟机下的Windows系统,做如下操作:

  1. 从开始菜单的设置-系统-设备下删除AMD网络适配器。

  2. 重启虚拟机Windows系统。

  3. 当提示你为一个PCI以太网卡安装驱动时,点取消。

  4. 打开开始菜单-设置-系统-设备,找到那个有问题的网络设备。

  5. 右键单击该网络设备,选择安装驱动。

  6. 选择“从磁盘安装”。

  7. 到你刚刚创建的快捷方式,选择.inf驱动安装文件,点击OK,就会看到一个列表。

  8. 然后选择Intel Pro/1000 MT桌面连接,点OK。

  9. 当提示你要Pro/1000安装包时,选择C盘的快捷方式。当提示需要Windows安装盘时,插入光盘。

  10. 点击完成按钮。

  11. 重启。

  12. 改变网卡设置,选择开始菜单-设置-网络-Intel Pro/1000 MT 桌面连接-属性-高级-连接速度和双工,选择1000Mbps自动协商。

  通过Samba在主机系统和虚拟机系统间共享文件

  通过VMware Server安装虚拟机系统,最大的好处就是可以用传统的Windows应用程序和本地的Linux应用访问同一个文件。因此,在Linux主机系统和 Windows虚拟机系统之间共享文件是必需的。Samba是一组给Windows客户端提供文件和打印机共享服务的程序集合,可以让这些客户端象访问网 络磁盘一样访问Linux文件系统。下面我们给出出一些提示供参考。

  首先,保证系统已经安装Samba。通常是默认安装的,但最好查一查。在下面的Samba配置文件中,“Username”指你的用户 名,Linux主机系统下的用户ID要和Windows虚拟机系统下的一致。这个文件定义了Linux和Windows共享的基本配置。更多的信息,可以 运行如下命令查看Samba的帮助文件:$ man Samba。或者到Samba的网站查看相关文档。

  1)VMware Server的Samba配置

  用root用户打开一个Linux文本编辑工具,把下面的内容保存为文件:/etc/Samba/smb.conf (;表示注释行)

  [global]

  ;General server settings

  netbios name = FC6

  workgroup = workgroup

  wins server = 169.0.0.1

  server string = Samba Server

  printcap name = /etc/printcap

  cups options = raw

  log file = /var/log/Samba/%m.log

  max log size = 50

  socket options = SO_KEEPALIVE TCP_NODELAY IPTOS_LOWDELAY SO_RCVBUF=8192

  ; SO_SNDBUF=8192

  dns proxy = no

  guest ok = yes

  guest account = username

  security = user

  encrypt passwords = yes

  username map = /etc/Samba/smbusers

  smb passwd file = /etc/Samba/smbpasswd

  restrict anonymous = no

  domain master = yes

  preferred master = yes

  max protocol = NT

  acl compatibility = winnt

  ldap ssl = No

  server signing = Auto

  [win]

  path = /home/username/data/

  writeable = yes

  valid users = username

  comment = home

  admin users = username

  browseable = yes

  case sensitive = no

  配置文件中的“path”指你需要共享的Linux目录,也就是你允许Linux和Windows都能访问的文件空间。在Windows虚拟机 系统下访问时,你可以选择“映射到网络驱动器”。这时,你就能看到你在Linux和Windows共享的内容了。刚安装的Windows系统访问 Linux主机系统时,可能会因为Windows安装了防火墙而弹出一个提示框,如下图:

  如图所示(假设本地IP是196.x.x.x范围的),告诉你的防火墙允许NetBIOS访问那个IP:

  2)有用的SAMBA提示

  下面的提示可以帮助你更好的在Linux和Windows共享文件:

  · 在物理主机上运行Windows系统时,不用修改已经共享的目录名称。只把那些非Windows系统不能访问的文件放在Windows驱动器下。

  · 因为你不能在Linux系统下直接访问虚拟机系统下的文件,所以最好把数据文件保存在Linux空间下,然后通过Samba共享给Windows程序用。

  · 在Windows桌面上的快捷方式点击右键,把驱动盘符C改为E,这样你就可以继续使用这些快捷方法

  设置音频

  VMware Server下的虚拟机系统能够处理多媒体内容,并通过声卡播放声音。如果你的主机系统和虚拟机系统都是64位的,可以到Vmware官方网站上下载驱动 (http://download3.vmware.com/software/wkst/vmaudio-5.10.0.350)。下载之后,复制到 Windows文件系统下,安装时跟安装其它音频驱动一样。其它情况需要这样做:

  1. 打开控制面板-设置-系统-声音,安装Windows声音驱动。

  2. 删除所有的音频驱动。

  3. 安装驱动文件。

  4. 重启,在驱动文件里找到系统提示要的.cat文件(或其它配置文件),点击OK。

  5. 播放一个声音文件。

  6. 把KDE的声音管理设置改为“自动检测”,然后告诉它空闲2秒钟后释放资源。

  USB设备配置

  通过VMware Server下的Windows应用可以直接访问打印机、扫描仪或者其它USB设备。如在VMware Server控制台的菜单查找打印机:VM >Removable Devices >USB Controller >printer(如下图)。

  那么,如何在VMware里使用USB打印机呢?其步骤如下:

  1. 打开VMware Server。

  2. 点击Windows标签。

  3. 点击添加设备。

  4. 添加USB控制器。

  5. 启动Windows。

  6. 打开VM工具栏,VM >Removable Devices >USB Devices >[你的打印机名]。

  7. Windows会提示找到新设备,要求你选择一款打印机或者从磁盘安装驱动。插入你的打印机驱动光盘。

  8. 点击OK,能看到一个安装成功的提示窗口。

  9. 打开开始菜单-设置-打印机,就能看到你的打印机了。

  10. 右键打印机图标,选择属性。

  11. 点击“打印测试页”,看看打印机是否打印出来。

  同样,安装扫描仪和其它USB设备也可参考上述步骤。值得一提的是,VMware虚拟USB适配器可以同时使用两个USB设备。安装第二个USB设备时,只要按照上面的步骤到VMware工具栏那一步就可以了。

  另外,一个USB设备可以被Linux主机系统使用,也可以被Windows虚拟机系统使用,你必须确定是哪个系统在使用它。选择菜单VM >Removable Devices >printer在虚拟机Windows系统下禁用打印机,这样主机的Linux系统才能使用它。然后重新插拔一下打印机的USB线。打开打印机管 理器,先停用、再启用一下打印机。

  在主机系统和虚拟机系统之间切换USB打印机,你需要在VMware Server上关闭USB设备,甚至通过重新插拔一下来重启设备,然后打开Linux开始菜单-控制中心,点击外设-打印机,选择相应的打印机菜单,点击 下拉菜单的重启项,重启CUPS Linux打印系统。

  优化VMware Server虚拟机系统的小提示

  下面是我常用到的小提示:

  · 磁盘速度:大多数版本都有调整硬盘速率的选项,借此你可以让硬盘访问速度加倍。

  · 把虚拟硬盘文件(即VMware虚拟机系统的“硬盘”)分割成多个2GB的文件,我发现这样能显著提高访问速率。

  · 一些优化Windows系统的小技巧在虚拟机下也可以用,当然最好安装防火墙和反病毒软件。

  · 如果映射驱动器上的某个程序运行慢或者有问题,可以在Windows虚拟机系统下重新安装试试。我就重新安装过Eudora、MS Office、CorelDRAW和Paint Shop Pro。如果你本地安装的Windows系统在C:Program Files下有程序,也安装到虚拟机的虚拟硬盘上去,不要留在映射驱动器E:(也就是/home/username/win)上。

  最后,值得一提的是,分割虚拟硬盘文件不仅有利于提高访问速率也有利于备份。通过以下命令可以分割虚拟硬盘文件:# VMware-vdiskmanager -r sourceDisk.vmdk -t 3 destinationDisk.vmdk。完成之后,要修改一下访问权限:

  chown username:username *.vm*

  chmod 777 *

  打开原来的.vmx文件,保证里面的硬盘项是指向分割后的文件里的第一个。VMware相关的文件列在/etc/VMware/locations这个文本文件里。

  在Linux主机系统之上通过VMware Server运行Windows虚拟机系统,让用户可以同时使用两个系统。也就是,既可以享受Linux的稳定性和健壮性,又能享受Windows程序的 易用性和通用性。也为现代计算机系统的后续扩展提供了空间。随着Linux程序变得一样易用而功能强大,普通用户也能比较容易的使用Linux程序。

Tags: linux, vmware, 虚拟机, 优化

动态网址与静态网址

转载自中文网站管理员博客

跟网络管理员沟通时经常会出现这种情形,一些广为传播的理念可能在过去是正确的,但是可能已不再切合目前的情况了。当我们最近在跟几个朋友谈及关于网址的结构时就碰到这种情况。其中一个朋友很担心动态网址的使用,甚至认为搜索引擎无法处理动态网址。另外一个朋友觉得动态网址对搜索引擎来说完全不是问 题,那些都是过去的事了。还有一个甚至说他从来都搞不懂动态网址和静态网址相比有什么区别。对于我们来说,这一刻使我们决定要好好研究一下动态网址和静态 网址这个话题。首先,让我们来界定一下我们要谈论的主题:

什么是静态网址?

一个静态网址,顾名思义,就是一个不会发生变化的网址,它通常不包含任何网址参数。例如:http://www.example.com/archive/january.htm。您可以在搜索框里输入 filetype:html 在谷歌上搜索静态网址。更新此种类型网址的页面会比较耗费时间,尤其是当信息量增长很快时,因为每一个单独的页面都必须更改编译代码。这也是为什么网站管理员们在处理大型的、经常更新的网站,像在线购物网站、论坛社区、博客或者是内容管理系统时,会使用动态网址的原因。

什么是动态网址?

如果一个网站的内容存储于一个数据库,并且根据要求来显示页面,这时就可以使用动态网址。在这种情况下,网站提供的内容基本上是基于模板形式的。通常情况下,一个动态网址看起来像这样:http://code.google.com/p/google-checkout-php-sample-code/issues/detail?id=31 您可以通过寻找像? = & 这样的符号识别出动态网址。动态网址有一个缺陷是不同的网址可以拥有相同的内容。这样导致不同的用户可能链向含有不同参数的网址,但是这些网址却都含有相 同的内容。这也是为什么网络管理员有时候想要将这些动态网址重写成静态网址的原因之一。

我是不是应该让我的动态网址看起来是静态的呢?

在处理动态网址时,希望您能了解以下几点事实:

  1. 要正确地生成和维护从动态网址到静态化网址的重写转变实际上是一件很难的事情。
  2. 将原始的动态网址提供给我们会比较安全,请让我们来处理诸如探测和避开那些有问题的参数的事情。
  3. 如果您想重写网址,请去掉那些不必要的参数,同时请保持它动态网址的样子。
  4. 如果您想提供一个静态网址代替动态网址,那么您应该切实地生成相应的静态内容。


静态和动态网址,Googlebot对于哪一个识别得更好呢?

们碰到过很多网站管理员,像我们的朋友那样,认为静态或者看起来是静态的网址对于网站的索引和排名是有优势的。这种看法是基于这样一个假设,即认为搜索引 擎在抓取和分析含有会话标识(session ID)和来源追踪器(source tracker)的网址时是有问题的。然而,事实是,谷歌在这两个方面都有了相当的进展。就点击率来说,静态网址可能略微有些优势,因为用户可以很容易地 读懂这个网址。但是,就索引和排名来说,使用数据库驱动网站并不意味着明显的劣势。相比较将参数隐藏以使他们看起来是静态的网址来说,我们更希望网站将动 态的网址直接提供给搜索引擎。

现在,让我们来看一些有关动态网址的广为传播的看法,并且来纠正一些蒙蔽网站管理员的假说。:)


传说:动态网址不能被抓取。

事实:
我们可以抓取动态网址并且解释不同的参数。如果您为了让网址看起来像是静态的,而隐藏那些可以给谷歌提供有价值信息的参数,这样做反而会给该网址的抓取和排名带来麻烦。我们的建议是:请不要将一个动态网址改换格式以使其看起来是静态的。尽可能地使用静态网址来显示静态内容是可取的,但在您决定展示动态内容的情况下,请不要将参数隐藏起来从而使他们看起来像是静态的,因为这样做会删除掉那些有助于我们分析网址的有用信息。

传说:动态网址的参数要少于3个。

事实:
对于参数的数量是没有限制的。但是,一个好的经验是不要让您的网址太长(这 个适用于所有的网址,不论是静态的还是动态的)。您可以去掉一些对于Googlebot来说不重要的参数,给用户一个好看一点的动态网址。如果您不能确定 可以去掉哪些参数,我们建议您将动态网址中所有的参数都提供给我们,我们的系统会弄明白哪一些是不重要的。将参数隐藏起来会影响我们正确地分析您的网址, 我们也就不能识别这些参数,一些重要信息可能也因此丢失了。

下面一些是我们认为您可能会存在疑问的一些问题。


这是否意味着我应该完全避免重写动态网址?

是我们的建议,除非您能确保您只是去掉多余的参数,或能够把所有有可能有不良影响的参数完整地删除。如果您把自己的动态网址任意修改使其看起来像是静态 的,您要清楚这样做是有风险的,有可能会导致有些信息不能被正常地编译和识别。如果您想给您的网站再增加一个静态的版本,请您一定要提供一个真正意义上的 静态的内容,比如生成那些可以通过网站相应路径而获取的文件。如果您仅仅是修改了动态网址的表现形式,而没有真正提供静态的内容,那么您有可能适得其反。 请直接把标准的动态URL提供给我们,我们会自动找出那些冗余的参数。

你能给我举一个例子么?

果您有一个像下面这样标准格式的动态网址:foo?key1=value&key2=value2,我们建议您不用改动它,谷歌会决定哪些参数可 以去掉;或者您可以为用户去掉那些不必要的参数。不过要慎重,仅仅去掉那些不重要的参数。这里有一个含有多个参数的动态网址的例子:

www.example.com/article/bin/answer.foo?language=en&answer=3&sid=98971298178906&query=URL

  • language=en – 标明这篇文章的语言
  • answer=3 – 这篇文章含有数字3
  • sid=8971298178906 – 会话标识代码是8971298178906
  • query=URL – 使这篇文章被找到的查询是[URL]

并不是所有的参数都提供额外的信息。所以将这个网址重写为www.example.com/article/bin/answer.foo?language=en&answer=3 可能不会引起任何问题,因为所有不相关的参数都去掉了。

下面是一些经过认为修改而看起来像是静态网址的例子。相比较没有重写、直接提供动态网址来说,这些网址可能会引起更多抓取方面的问题。

  • www.example.com/article/bin/answer.foo/en/3/98971298178906/URL
  • www.example.com/article/bin/answer.foo/language=en/answer=3/ sid=98971298178906/query=URL
  • www.example.com/article/bin/answer.foo/language/en/answer/3/sid/ 98971298178906/query/URL
  • www.example.com/article/bin/answer.foo/en,3,98971298178906,URL

果您将动态网址重写成如上所述的示例的话,可能会导致我们很多不必要的抓取,因为这些网址中都含有会话标识(sid)和查询(query)参数的可变值, 这无形中生成了很多看起来不同的URL,而他们包含的内容却是相同的。这些格式让我们很难理解通过这个网址返回的实际内容和参数URL以及 98971298178906是无关的。不过,下面这个重写的例子却将所有无关的参数都去掉了:

  • www.example.com/article/bin/answer.foo/en/3

管我们可以正确地处理这个网址,我们还是不鼓励您使用这样的重写。因为它很难维护,而且一旦一个新的参数被加到原始的动态网址,那么这个网址就需要马上更 新。不这样做的话就会再次导致生成一个隐藏了参数的貌似静态网址的URL。所以最好的解决方法是通常将动态网址保持他们原来的样子。或者,如果您去掉不相 关的参数,请记住一定要保持这个网址是动态的:

  • www.example.com/article/bin/answer.foo?language=en&answer=3

本文来自:http://adsense.googlechinablog.com/2008/11/blog-post_18.html

Tags: google, seo, 统计, 优化, 更新

Google Analytics 进行重大更新

Google Analytics一直为各个站长朋友提供着优质免费的服务,今天Google Analytics进行了比较大的更新,新的功能包括自定义报表,受众分析,Adsense分析,开放API,还有一些用户界面的更新.

 

1. 自定义报告: Lets you create reports using any source of data (such as people who have bought something on your site, average number of pageviews, geography, visiting source) as the X and Y coordinates for a chart.

2. 受众分析: Lets you look at custom slices of your Website’s audience (such as people who stay for more than two minutes, people who came from TechCrunch, people who came from the New York Times, people who bought something, people who came from Techcrunch and bought something).

3. Adsense集成: This was along time coming. You can already track how your AdWords campaigns impact traffic to your site. Now you can see data from your AdSense account as well. Marry that with Google Analytics data and you can get new insights into not only which ads you place through AdSense are doing the best, but from which referring sites. (Read more on the AdSense blog).

4. API: This will be rolling out “soon,’ but is also being announced today. Google will open up an API to Gogle Analytics that will allow developers to pipe all of the data in Google Analytics to other Websites, tools, widgets, or even mobile apps. So if someone wants to create a widget that will let people show their Google Analytics charts on their blog, that will be possible.

5. 气泡方式显示图表: The new motion charts allow you to visualize data across five dimensions (x axis, y axis, size of bubble, color of bubble, and position over time). It lets you create an animation to show you what’s been happening with your Website’s key metrics. This feature comes out of the Trendalyzer software Google bought from Gapminder in 2007. (See video below).

6. 用户界面优化: You’ll notice some new subtle shading and highlighting. But the biggest change will be in the management dashboard. Now, if you track more than one Website with Google Analytics, you will be able to see trends across all of them at once.

原文:http://www.cnbeta.com/articles/67788.htm

Tags: google, analytics, 统计, 优化, 更新

优化递归的效率

原文来自博客园,把代码全部翻译成了PHP的,因为这些东西对PHP同样适用。

函数递归调用是很常见的做法,但是它往往是低效的,本文探讨优化递归效率的思路。
1.尾递归转换成迭代
尾递归是一种简单的递归,它可以用迭代来代替 比如 求阶乘函数的递归表达

PHP代码
  1. <?php  
  2. function  f( $n = 0)  
  3. {  
  4.     if($n<=0)return 1;  
  5.     return $n*f($n-1);  
  6. }  
  7. ?>  

可以转换成完全等价的循环迭代

PHP代码
  1. <?php  
  2. function f($n = 0)  
  3. {  
  4.     $r=0;  
  5.     while$n-- > 0)  
  6.         $r *= $n;  
  7.     return $r;  
  8. }  
  9. ?>  

尾递归是最简单的情形,好的编译器甚至可以自动的识别尾递归并把它转换成循环迭代。


更多看详细

» 阅读全文

Tags: php, 递归, 效率, 优化

Mysql动态修改参数

    mysql数据库也像ORACLE数据库一样,可以动态的修改参数,可以修改会话级变量只对当前会话产生影响;也可以修改全局变量,对所有新连接的会话都产生影响。

修改会话级变量

用show variables 命令查看当前参数的值,like 'pattern'用于模式匹配,查找指定的参数

mysql> show variables like '%sort_buffer_size%';
+---------------------------+------------+
| Variable_name             | Value      |
+---------------------------+------------+
| sort_buffer_size          | 6291448    |
+---------------------------+------------+
1 rows in set (0.00 sec)

用set SESSION命令设置会话级变量的新值

mysql> set SESSION sort_buffer_size=7000000;
Query OK, 0 rows affected (0.00 sec)

--修改会话级变量对当前会话来说立刻生效
mysql> show variables like '%sort_buffer_size%';       
+---------------------------+------------+
| Variable_name             | Value      |
+---------------------------+------------+
| sort_buffer_size          | 7000000    |
+---------------------------+------------+
1 rows in set (0.00 sec)

mysql> exit
Bye
退出重新连接后,此参数恢复原值
[root@devdbc_stb root]# mysql
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 40 to server version: 5.0.37-log

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> show variables like '%sort_buffer_size%';       
+---------------------------+------------+
| Variable_name             | Value      |
+---------------------------+------------+
| sort_buffer_size          | 6291448    |
+---------------------------+------------+
1 rows in set (0.00 sec)

修改全局变量
[root@devdbc_stb root]# mysql
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 40 to server version: 5.0.37-log

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> show variables like '%sort_buffer_size%';       
+---------------------------+------------+
| Variable_name             | Value      |
+---------------------------+------------+
| sort_buffer_size          | 6291448    |
+---------------------------+------------+
1 rows in set (0.00 sec)

用set GLOBAL 命令设置全局变量

mysql> set GLOBAL sort_buffer_size = 7000000;
Query OK, 0 rows affected (0.00 sec)

mysql> show variables like '%sort_buffer_size%';        
+---------------------------+------------+
| Variable_name             | Value      |
+---------------------------+------------+
| sort_buffer_size          | 6291448    |
+---------------------------+------------+
1 rows in set (0.00 sec)
当前此参数的值并不发生变化,先退出,然后重新连进去
mysql> exit
Bye
[root@devdbc_stb root]# mysql
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 41 to server version: 5.0.37-log

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> show variables like '%sort_buffer_size%';
+---------------------------+------------+
| Variable_name             | Value      |
+---------------------------+------------+
| sort_buffer_size          | 7000000    |
+---------------------------+------------+
1 rows in set (0.00 sec)
新的参数值生效

Tags: mysql, 优化, database, 修改

Records:171234