MYSQL环境变量设置方法


Posted in PHP onJanuary 15, 2007

mysql环境变量设置(windows环境)

1、对于命令控来说,在cmd命令下行下操作很方便,但有时需要直接在命令行床空执行mysql这样的命令,会出现”mysql不是内部或外部命令“这样的错误提示,原因是mysql其实是一个exe文件,存放于myql安装路径/bin下,因此需要将mysql的安装路径配置到path环境变量中,如此以后就不用每次都cd到mysql路径下了;

2、设置完成后我们再试试看-cmd-->mysql
已经连接上mysql了,接下来我们可以使用dml、sql语言来创建我们自己的数据库了;

3、首先,要创建一个数据库名字为test_user;
创建成功!

4、创建一个张数据表,使用脚本即可。
注意,创建table之前一定要use databasename;

你能用这个命令得到mysqld服务器缺省缓冲区大小: 

shell> mysqld --help 

这个命令生成一张所有mysqld选项和可配置变量的表。输出包括缺省值并且看上去象这样一些东西: 

Possible variables for option --set-variable (-O) are: 
back_log???????current value: 5 
connect_timeout??? current value: 5 
delayed_insert_timeout?current value: 300 
delayed_insert_limit?current value: 100 
delayed_queue_size??current value: 1000 
flush_time??????current value: 0 
interactive_timeout? current value: 28800 
join_buffer_size???current value: 131072 
key_buffer_size??? current value: 1048540 
lower_case_table_names?current value: 0 
long_query_time??? current value: 10 
max_allowed_packet??current value: 1048576 
max_connections??? current value: 100 
max_connect_errors??current value: 10 
max_delayed_threads? current value: 20 
max_heap_table_size? current value: 16777216 
max_join_size???? current value: 4294967295 
max_sort_length??? current value: 1024 
max_tmp_tables????current value: 32 
max_write_lock_count?current value: 4294967295 
net_buffer_length?? current value: 16384 
query_buffer_size?? current value: 0 
record_buffer???? current value: 131072 
sort_buffer????? current value: 2097116 
table_cache????? current value: 64 
thread_concurrency??current value: 10 
tmp_table_size????current value: 1048576 
thread_stack?????current value: 131072 
wait_timeout?????current value: 28800 

如果有一个mysqld服务器正在运行,通过执行这个命令,你可以看到它实际上使用的变量的值: 

shell> mysqladmin variables 

每个选项在下面描述。对于缓冲区大小、长度和栈大小的值以字节给出,你能用于个后缀“K”或“M” 指出以K字节或兆字节显示值。例如,16M指出16兆字节。后缀字母的大小写没有关系;16M和16m是相同的。 

你也可以用命令SHOW STATUS自一个运行的服务器看见一些统计。见7.21 SHOW语法(得到表、列的信息)。 

back_log 
要求MySQL能有的连接数量。当主要MySQL线程在一个很短时间内得到非常多的连接请求,这就起作用,然后主线程花些时间(尽管很短)检查连接并且启动一个新线程。back_log值指出在MySQL暂时停止回答新请求之前的短时间内多少个请求可以被存在堆栈中。只有如果期望在一个短时间内有很多连接,你需要增加它,换句话说,这值对到来的TCP/IP连接的侦听队列的大小。你的操作系统在这个队列大小上有它自己的限制。 Unix listen(2)系统调用的手册页应该有更多的细节。检查你的OS文档找出这个变量的最大值。试图设定back_log高于你的操作系统的限制将是无效的。 
connect_timeout 
mysqld服务器在用Bad handshake(糟糕的握手)应答前正在等待一个连接报文的秒数。 
delayed_insert_timeout 
一个Insert DELAYED线程应该在终止之前等待Insert语句的时间。 
delayed_insert_limit 
在插入delayed_insert_limit行后,Insert DELAYED处理器将检查是否有任何Select语句未执行。如果这样,在继续前执行允许这些语句。 
delayed_queue_size 
应该为处理Insert DELAYED分配多大一个队列(以行数)。如果排队满了,任何进行Insert DELAYED的客户将等待直到队列又有空间了。 
flush_time 
如果这被设置为非零值,那么每flush_time秒所有表将被关闭(以释放资源和sync到磁盘)。 
interactive_timeout 
服务器在关上它前在一个交互连接上等待行动的秒数。一个交互的客户被定义为对mysql_real_connect()使用CLIENT_INTERACTIVE选项的客户。也可见wait_timeout。 
join_buffer_size 
用于全部联结(join)的缓冲区大小(不是用索引的联结)。缓冲区对2个表间的每个全部联结分配一次缓冲区,当增加索引不可能时,增加该值可得到一个更快的全部联结。(通常得到快速联结的最佳方法是增加索引。) 
key_buffer_size 
索引块是缓冲的并且被所有的线程共享。key_buffer_size是用于索引块的缓冲区大小,增加它可得到更好处理的索引(对所有读和多重写),到你能负担得起那样多。如果你使它太大,系统将开始换页并且真的变慢了。记住既然MySQL不缓存读取的数据,你将必须为OS文件系统缓存留下一些空间。为了在写入多个行时得到更多的速度,使用LOCK TABLES。见7.24LOCK TABLES/UNLOCK TABLES语法。 
long_query_time 
如果一个查询所用时间超过它(以秒计),Slow_queries记数器将被增加。 
max_allowed_packet 
一个包的最大尺寸。消息缓冲区被初始化为net_buffer_length字节,但是可在需要时增加到max_allowed_packet个字节。缺省地,该值太小必能捕捉大的(可能错误)包。如果你正在使用大的BLOB列,你必须增加该值。它应该象你想要使用的最大BLOB的那么大。 
max_connections 
允许的同时客户的数量。增加该值增加mysqld要求的文件描述符的数量。见下面对文件描述符限制的注释。见18.2.4 Too many connections错误。 
max_connect_errors 
如果有多于该数量的从一台主机中断的连接,这台主机阻止进一步的连接。你可用FLUSH HOSTS命令疏通一台主机。 
max_delayed_threads 
不要启动多于的这个数字的线程来处理Insert DELAYED语句。如果你试图在所有Insert DELAYED线程在用后向一张新表插入数据,行将被插入,就像DELAYED属性没被指定那样。 
max_join_size 
可能将要读入多于max_join_size个记录的联结将返回一个错误。如果你的用户想要执行没有一个Where子句、花很长时间并且返回百万行的联结,设置它。 
max_sort_length 
在排序BLOB或TEXT值时使用的字节数(每个值仅头max_sort_length个字节被使用;其余的被忽略)。 
max_tmp_tables 
(该选择目前还不做任何事情)。一个客户能同时保持打开的临时表的最大数量。 
net_buffer_length 
通信缓冲区在查询之间被重置到该大小。通常这不应该被改变,但是如果你有很少的内存,你能将它设置为查询期望的大小。(即,客户发出的SQL语句期望的长度。如果语句超过这个长度,缓冲区自动地被扩大,直到max_allowed_packet个字节。) 
record_buffer 
每个进行一个顺序扫描的线程为其扫描的每张表分配这个大小的一个缓冲区。如果你做很多顺序扫描,你可能想要增加该值。 
sort_buffer 
每个需要进行排序的线程分配该大小的一个缓冲区。增加这值加速ORDER BY或GROUP BY操作。见18.5 MySQL在哪儿存储临时文件。 
table_cache 
为所有线程打开表的数量。增加该值能增加mysqld要求的文件描述符的数量。MySQL对每个唯一打开的表需要2个文件描述符,见下面对文件描述符限制的注释。对于表缓存如何工作的信息,见10.2.4 MySQL怎样打开和关闭表。 
tmp_table_size 
如果一张临时表超出该大小,MySQL产生一个The table tbl_name is full形式的错误,如果你做很多高级GROUP BY查询,增加tmp_table_size值。 
thread_stack 
每个线程的栈大小。由crash-me测试检测到的许多限制依赖于该值。缺省队一般的操作是足够大了。见10.8 使用你自己的基准。 
wait_timeout 
服务器在关闭它之前在一个连接上等待行动的秒数。也可见interactive_timeout。 
MySQL使用是很具伸缩性的算法,因此你通常能用很少的内存运行或给MySQL更多的被存以得到更好的性能。 

如果你有很多内存和很多表并且有一个中等数量的客户,想要最大的性能,你应该一些象这样的东西: 

shell> safe_mysqld -O key_buffer=16M -O table_cache=128 \ 
?????-O sort_buffer=4M -O record_buffer=1M & 

如果你有较少的内存和大量的连接,使用这样一些东西: 
shell> safe_mysqld -O key_buffer=512k -O sort_buffer=100k \ 
?????-O record_buffer=100k & 

或甚至: 
shell> safe_mysqld -O key_buffer=512k -O sort_buffer=16k \ 
?????-O table_cache=32 -O record_buffer=8k -O net_buffer=1K & 

如果有很多连接,“交换问题”可能发生,除非mysqld已经被配置每个连接使用很少的内存。当然如果你对所有连接有足够的内存,mysqld执行得更好。 

注意,如果你改变mysqld的一个选项,它实际上只对服务器的那个例子保持。 

为了明白一个参数变化的效果,这样做: 

shell> mysqld -O key_buffer=32m --help 

保证--help选项是最后一个;否则,命令行上在它之后列出的任何选项的效果将不在反映在输出中。

PHP 相关文章推荐
php自动加载的两种实现方法
Jun 21 PHP
浅析PHP程序防止ddos,dns,集群服务器攻击的解决办法
Jun 18 PHP
php利用curl抓取新浪微博内容示例
Apr 27 PHP
浅谈discuz密码加密的方式
May 22 PHP
php数组使用规则分析
Feb 27 PHP
PHP中大于2038年时间戳的问题处理方案
Mar 03 PHP
PHP多线程之内部多线程实例分析
Mar 09 PHP
Django 中 cookie的使用
Aug 17 PHP
PHP DB 数据库连接类定义与用法示例
Mar 11 PHP
微信公众平台开发教程②微信端分享功能图文详解
Apr 10 PHP
PHP大文件切割上传并带进度条功能示例
Jul 01 PHP
Laravel登录失败次数限制的实现方法
Aug 26 PHP
PHP has encountered an Access Violation
Jan 15 #PHP
PHP5 安装方法
Jan 15 #PHP
安装APACHE
Jan 15 #PHP
php5.2时间相差8小时
Jan 15 #PHP
isset和empty的区别
Jan 15 #PHP
mysql5详细安装教程
Jan 15 #PHP
FCKeditor的安装(PHP)
Jan 13 #PHP
You might like
PHP新手上路(十一)
2006/10/09 PHP
PHP中isset()和unset()函数的用法小结
2014/03/11 PHP
2014年最新推荐的10款 PHP 开发框架
2014/08/01 PHP
微信公众平台实现获取用户OpenID的方法
2015/04/15 PHP
php实现博客,论坛图片防盗链的方法
2016/10/15 PHP
JavaScript null和undefined区别分析
2009/10/14 Javascript
JavaScript Cookie的读取和写入函数
2009/12/08 Javascript
javascript中如何处理引号编码"
2013/08/15 Javascript
jQuery查看选中对象HTML代码的方法
2016/06/17 Javascript
Node.js读写文件之批量替换图片的实现方法
2016/09/07 Javascript
js创建对象几种方式的优缺点对比
2016/09/28 Javascript
JS识别浏览器类型(电脑浏览器和手机浏览器)
2016/11/18 Javascript
关于Javascript中document.cookie的使用
2017/03/08 Javascript
原生JS实现图片懒加载(lazyload)实例
2017/06/13 Javascript
angular指令笔记ng-options的使用方法
2017/09/18 Javascript
Express的HTTP重定向到HTTPS的方法
2018/06/06 Javascript
JavaScript解决浮点数计算不准确问题的方法分析
2018/07/09 Javascript
解决vant中 tab栏遇到的坑 van-tabs
2020/11/04 Javascript
Python拼接微信好友头像大图的实现方法
2018/08/01 Python
python时间序列按频率生成日期的方法
2019/05/14 Python
Python中单线程、多线程和多进程的效率对比实验实例
2019/05/14 Python
python3 深浅copy对比详解
2019/08/12 Python
Python利用matplotlib绘制约数个数统计图示例
2019/11/26 Python
浅谈python多线程和多线程变量共享问题介绍
2020/04/17 Python
python正则表达式的懒惰匹配和贪婪匹配说明
2020/07/13 Python
浏览器实现移动端高性能css3动画(开启gpu加速)
2013/12/23 HTML / CSS
HTML5 Blob对象的具体使用
2020/05/22 HTML / CSS
理肤泉美国官网:La Roche-Posay
2018/01/17 全球购物
英国领先的鞋类零售商:Shoe Zone
2018/12/13 全球购物
CK巴西官方网站:Calvin Klein巴西
2019/07/19 全球购物
大学本科毕业生求职信范文
2013/12/18 职场文书
放飞理想演讲稿
2014/09/09 职场文书
2014年宣传部个人工作总结
2014/12/06 职场文书
医院感染管理制度
2015/08/05 职场文书
详解Nginx 工作原理
2021/03/31 Servers
Nginx配置之实现多台服务器负载均衡
2021/08/02 Servers