MySQL常用技巧都包括哪些?
以下的文章主要介绍的是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常用技巧的介绍,望你能有所收获。

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제









데이터 통합 단순화 : AmazonRdsMysQL 및 Redshift의 Zero ETL 통합 효율적인 데이터 통합은 데이터 중심 구성의 핵심입니다. 전통적인 ETL (추출, 변환,로드) 프로세스는 특히 데이터베이스 (예 : AmazonRDSMySQL)를 데이터웨어 하우스 (예 : Redshift)와 통합 할 때 복잡하고 시간이 많이 걸립니다. 그러나 AWS는 이러한 상황을 완전히 변경 한 Zero ETL 통합 솔루션을 제공하여 RDSMYSQL에서 Redshift로 데이터 마이그레이션을위한 단순화 된 거의 실시간 솔루션을 제공합니다. 이 기사는 RDSMYSQL ZERL ETL 통합으로 Redshift와 함께 작동하여 데이터 엔지니어 및 개발자에게 제공하는 장점과 장점을 설명합니다.

MySQL은 여러 동시 연결을 처리하고 멀티 스레딩/다중 프로세싱을 사용하여 각 클라이언트 요청에 독립적 인 실행 환경을 할당하여 방해받지 않도록 할 수 있습니다. 그러나 동시 연결 수는 시스템 리소스, MySQL 구성, 쿼리 성능, 스토리지 엔진 및 네트워크 환경의 영향을받습니다. 최적화에는 코드 레벨 (효율적인 SQL), 구성 레벨 (Max_Connections 조정), 하드웨어 수준 (서버 구성 개선)과 같은 많은 요소를 고려해야합니다.

MySQL이 테이블 구조를 수정하면 메타 데이터 잠금 장치가 일반적으로 사용되므로 테이블을 잠글 수 있습니다. 자물쇠의 영향을 줄이려면 다음과 같은 조치를 취할 수 있습니다. 1. 온라인 DDL과 함께 테이블을 사용할 수 있습니다. 2. 배치에서 복잡한 수정을 수행합니다. 3. 소형 또는 피크 기간 동안 운영됩니다. 4. PT-OSC 도구를 사용하여 더 미세한 제어를 달성하십시오.

1. 올바른 색인을 사용하여 스캔 한 데이터의 양을 줄임으로써 데이터 검색 속도를 높이십시오. 테이블 열을 여러 번 찾으면 해당 열에 대한 인덱스를 만듭니다. 귀하 또는 귀하의 앱이 기준에 따라 여러 열에서 데이터가 필요한 경우 복합 인덱스 2를 만듭니다. 2. 선택을 피하십시오 * 필요한 열만 선택하면 모든 원치 않는 열을 선택하면 더 많은 서버 메모리를 선택하면 서버가 높은 부하 또는 주파수 시간으로 서버가 속도가 느려지며, 예를 들어 Creation_at 및 Updated_at 및 Timestamps와 같은 열이 포함되어 있지 않기 때문에 쿼리가 필요하지 않기 때문에 테이블은 선택을 피할 수 없습니다.

기본 키는 데이터베이스의 각 행을 고유하게 식별하는 키 속성이기 때문에 MySQL 기본 키는 비어있을 수 없습니다. 기본 키가 비어 있으면 레코드를 고유하게 식별 할 수 없으므로 데이터 혼동으로 이어질 수 있습니다. 자체 점수 정수 열 또는 UUID를 기본 키로 사용하는 경우 효율성 및 우주 점유와 같은 요소를 고려하고 적절한 솔루션을 선택해야합니다.

MySQL은 Android에서 직접 실행할 수는 없지만 다음 방법을 사용하여 간접적으로 구현할 수 있습니다. Android 시스템에 구축 된 Lightweight Database SQLite를 사용하여 별도의 서버가 필요하지 않으며 모바일 장치 애플리케이션에 매우 적합한 작은 리소스 사용량이 있습니다. MySQL 서버에 원격으로 연결하고 데이터 읽기 및 쓰기를 위해 네트워크를 통해 원격 서버의 MySQL 데이터베이스에 연결하지만 강력한 네트워크 종속성, 보안 문제 및 서버 비용과 같은 단점이 있습니다.

MySQL은 JSON 데이터를 반환 할 수 있습니다. json_extract 함수는 필드 값을 추출합니다. 복잡한 쿼리의 경우 where 절을 사용하여 JSON 데이터를 필터링하지만 성능 영향에주의하십시오. JSON에 대한 MySQL의 지원은 지속적으로 증가하고 있으며 최신 버전 및 기능에주의를 기울이는 것이 좋습니다.

Root로 MySQL에 로그인 할 수없는 주된 이유는 권한 문제, 구성 파일 오류, 암호 일관성이 없음, 소켓 파일 문제 또는 방화벽 차단입니다. 솔루션에는 다음이 포함됩니다. 구성 파일의 BAND-ADDRESS 매개 변수가 올바르게 구성되어 있는지 확인하십시오. 루트 사용자 권한이 수정 또는 삭제되어 재설정되었는지 확인하십시오. 케이스 및 특수 문자를 포함하여 비밀번호가 정확한지 확인하십시오. 소켓 파일 권한 설정 및 경로를 확인하십시오. 방화벽이 MySQL 서버에 연결되는지 확인하십시오.
