>  기사  >  데이터 베이스  >  MySQL常用技巧都包括哪些?

MySQL常用技巧都包括哪些?

WBOY
WBOY원래의
2016-06-07 16:14:32912검색

以下的文章主要介绍的是MySQL常用技巧,我们主要是讲述七个实际应用技巧,如果你对这七个MySQL常用技巧感兴趣的话,你就可以浏览以下的文章了,望会给你带来一些帮助在此学习方面。 1)MySQL常用技巧之一,用户权限管理最好是细分到DB级 或 Table级,不要轻

以下的文章主要介绍的是MySQL常用技巧,我们主要是讲述七个实际应用技巧,如果你对这七个MySQL常用技巧感兴趣的话,你就可以浏览以下的文章了,望会给你带来一些帮助在此学习方面。

1)MySQL常用技巧之一,用户权限管理最好是细分到DB级 或 Table级,不要轻易开通全局权限;

2)MySQL常用技巧之二,用grant 和 revoke,进行用户授权和收权;

<ol class="dp-xml">
<li class="alt">MySQL<span><span class="tag">></span><span> grant select on db.* to user@host identified by ‘passwd’;  </span></span>
</li>
<li>MySQL<span class="tag">></span><span> revoke all on db.* from user@host;  </span>
</li>
<li class="alt">MySQL<span class="tag">></span><span> flush privileges; </span>
</li>
</ol>

注意:对用户权限作变更后需运行flush使变更生效;

3)MySQL常用技巧之三,查看服务器运行状况的几个重要命令;

show status; 显示系统的运行状态

show variables; 显示系统运行的参数设置与环境变量

show processlist; 显示现有的访问连接;

对master slave系统还有:show master/slave status;

4)MySQL常用技巧之四,设置最大的并发响应连接数、等待响应队列的最大等待连接数(上限与具体操作系统有关)、非活动连接超时时间

最大连接数

查看:MySQL> show variables like ‘max_connections’;

设置:MySQL> set global max_connections = 200;

默认为100,若设置为0,则表示不作限制;

瞬时并发等待连接数

查看:MySQL> show variables like ‘back_log’;

设置:MySQL> set global back_log = 200;

默认为50;

非活动连接超时时间

MySQL> set wait_timeout = 3600;

默认为28800,即8小时,单位秒;

5)MySQL常用技巧之五,表优化(碎片整理)

倘若一个数据量很大的表进行了大量的修改,那么可以通过命令

MySQL> optimize table table_name;

来达到碎片整理的目的;

6)MySQL常用技巧之六,使用MySQLhotcopy进行数据库文件热备份

/home/MySQL/bin/MySQLhotcopy db_name[./table_regex/] [new_db_name | direc tory]

示例:

/home/MySQL/bin/MySQLhotcopy -u root -p ‘xxxx’ test./^tt$/ ./

注意:MySQLhotcopy是一个perl程序,需要DBI和DBD perl模块的支持

7)MySQL常用技巧之七,错误日志与binlog

错误记录日志一般是在数据目录下,如:

var/.err

binlog可以记录数据库上发生的所有操作记录,通过my.cnf中的log-bin选项来开启,如果被注释就代表关闭,binlog的内容可以通过以下命令来查看:

<ol class="dp-xml"><li class="alt">MySQL<span>binlog [options] log-files </span>
</li></ol>

附录 权限名称与描述列表

<ol class="dp-xml">
<li class="alt"><span><span>Privilege  </span></span></li>
<li><span>Meaning  </span></li>
<li class="alt"><span>ALL [PRIVILEGES]  </span></li>
<li><span>Sets all simple privileges except GRANT OPTION  </span></li>
<li class="alt"><span>ALTER  </span></li>
<li><span>Allows use of ALTER TABLE  </span></li>
<li class="alt"><span>CREATE  </span></li>
<li><span>Allows use of CREATE TABLE  </span></li>
<li class="alt"><span>CREATE TEMPORARY TABLES  </span></li>
<li><span>Allows use of CREATE TEMPORARY TABLE  </span></li>
<li class="alt"><span>DELETE  </span></li>
<li><span>Allows use of DELETE  </span></li>
<li class="alt"><span>DROP  </span></li>
<li><span>Allows use of DROP TABLE  </span></li>
<li class="alt"><span>EXECUTE  </span></li>
<li><span>Not implemented  </span></li>
<li class="alt"><span>FILE  </span></li>
<li><span>Allows use of SELECT … INTO OUTFILE and LOAD DATA INFILE  </span></li>
<li class="alt"><span>INDEX  </span></li>
<li><span>Allows use of CREATE INDEX and DROP INDEX  </span></li>
<li class="alt"><span>INSERT  </span></li>
<li><span>Allows use of INSERT  </span></li>
<li class="alt"><span>LOCK TABLES  </span></li>
<li><span>Allows use of LOCK TABLES on tables for which you have the SELECT privilege  </span></li>
<li class="alt"><span>PROCESS  </span></li>
<li><span>Allows use of SHOW FULL PROCESSLIST  </span></li>
<li class="alt"><span>REFERENCES  </span></li>
<li><span>Not implemented  </span></li>
<li class="alt"><span>RELOAD  </span></li>
<li><span>Allows use of FLUSH  </span></li>
<li class="alt"><span>REPLICATION CLIENT  </span></li>
<li><span>Allows the user to ask where slave or master servers are  </span></li>
<li class="alt"><span>REPLICATION SLAVE  </span></li>
<li><span>Needed for replication slaves (to read binary log events from the master)  </span></li>
<li class="alt"><span>SELECT  </span></li>
<li><span>Allows use of SELECT  </span></li>
<li class="alt"><span>SHOW DATABASES  </span></li>
<li><span>SHOW DATABASES shows all databases  </span></li>
<li class="alt"><span>SHUTDOWN  </span></li>
<li>
<span>Allows use of </span>MySQL<span>admin shutdown  </span>
</li>
<li class="alt"><span>SUPER  </span></li>
<li><span>Allows use of CHANGE MASTER, KILL, PURGE MASTER LOGS, and SET GLOBAL statements, </span></li>
<li>
<span>the </span>MySQL<span>admin debug command; allows you to connect (once) even if max_connections is reached  </span>
</li>
<li class="alt"><span>UPDATE  </span></li>
<li><span>Allows use of UPDATE  </span></li>
<li class="alt"><span>USAGE  </span></li>
<li><span>Synonym for “no privileges”  </span></li>
<li class="alt"><span>GRANT OPTION  </span></li>
<li><span>Allows privileges to be granted  </span></li>
</ol>

以上的相关内容就是对MySQL常用技巧的介绍,望你能有所收获。


성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.