찾다
데이터 베이스MySQL 튜토리얼mysql에서 5.6과 5.7의 차이점은 무엇입니까

mysql 5.6과 5.7의 차이점: 1. 버전 5.7은 json 형식 데이터를 제공하지만 버전 5.6은 json 버전 데이터를 제공하지 않습니다. 2. 버전 5.7은 여러 마스터와 하나의 슬레이브를 지원하지만 버전 5.6은 여러 마스터와 슬레이브를 지원하지 않습니다. 하나의 슬레이브 3 , 5.7 버전은 bin 디렉터리에서 데이터를 초기화하는 반면, 5.6 버전은 스크립트 디렉터리에 있습니다.

mysql에서 5.6과 5.7의 차이점은 무엇입니까

이 튜토리얼의 운영 환경: windows10 시스템, mysql8.0.22 버전, Dell G3 컴퓨터.

mysql에서 5.6과 5.7의 차이점은 무엇인가요?

1. 컴파일과 설치의 차이점

Mysql5.7은 업데이트 이후 json 등 많은 변화가 있었고, 심지어 BOOST도 바뀌었습니다. 설치를 위해서는 라이브러리가 필요합니다. mysql의 공식 웹 사이트 소스 코드에는 부스트 라이브러리가 있는 소스 코드와 부스트 라이브러리가 없는 소스 코드가 포함되어 있습니다.

mysql5.7은 고가용성을 달성하기 위한 다양한 방법으로 여러 마스터와 하나의 슬레이브를 지원합니다.

wget http://downloads.sourceforge.net/project/boost/boost/1.59.0/boost_1_59_0.tar.gz
wget http://cdn.mysql.com//Downloads/MySQL-5.7/mysql-boost-5.7.20.tar.gz
wget http://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.20.tar.gz

부스트를 사용한 MySQL 소스 코드 설치

1. 종속성 패키지 설치

yum -y install make gcc-c++ cmake bison-devel  ncurses-devel   bison perl perl-devel  perl perl-devel

2. 컴파일 및 설치

cd /usr/local/mysql-5.7.20/
cmake -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_BOOST=boost
make
make install

. 부스트 mysql 소스 코드 설치 없이

1. 종속성 패키지 설치

yum -y install gcc gcc-c++ ncurses ncurses-devel cmake

2. 컴파일 및 설치

cmake . -DCMAKE_INSTALL_PREFIX=/application/mysql-5.7.20 \
-DMYSQL_DATADIR=/application/mysql-5.7.20/data \
-DMYSQL_UNIX_ADDR=/application/mysql-5.7.20/tmp/mysql.sock \
#开启BOOST库
-DDOWNLOAD_BOOST=1 \
#指定boost库位置
-DWITH_BOOST=/usr/local/boost_1_59_0 \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_EXTRA_CHARSETS=all \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_FEDERATED_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 \
-DWITH_ZLIB=bundled \
-DWITH_SSL=bundled \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_EMBEDDED_SERVER=1 \
-DENABLE_DOWNLOADS=1 \
-DWITH_DEBUG=0 
make
make install

2. 초기 인식 시 차이점

#【5.6版本初识化】
cd /usr/local/mysql/scripts/
./mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
#【5.7版本初识化】这种初始化方式,默认密码在一个文件中
/usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

–initialize는 임의의 비밀번호를 생성하여 파일에 기록합니다

-insecure는 임의의 비밀번호를 생성하지 않습니다

3. 기능과 특징의 차이점

Security

사용자 테이블 mysql.user의 플러그인 필드는 비어 있을 수 없습니다. 기본값은 mysql_old_password가 아닌 mysql_native_password입니다. 이전 비밀번호 형식은 더 이상 지원되지 않습니다.

비밀번호 만료 메커니즘이 추가되었습니다. 만료 후 비밀번호를 변경해야 합니다. 그렇지 않으면 비활성화되거나 샌드박스 모드로 들어갈 수 있습니다.

비밀번호 만료 메커니즘을 추가하면 비밀번호를 변경해야 합니다. 그렇지 않으면 비활성화되거나 샌드박스 모드로 들어갈 수 있습니다.

제공됨 SSL 보안 액세스 구성이 더 간단하며 기본 연결은 SSL 암호화를 사용합니다.

Flexibility

MySQL 데이터베이스도 버전 5.7.8부터 JSON을 지원합니다.

정형 데이터와 비정형 데이터를 혼합하여 저장할 수 있으며, 관계형 데이터베이스와 비관계형 데이터베이스의 장점을 동시에 갖습니다.

완전한 트랜잭션 지원 제공 가능

생성 컬럼은 MySQL 5.7에 도입된 새로운 기능, 소위 말하는 생성된 열, 데이터베이스의 이 열은 다른 열에서 계산됩니다

사용 용이성

MySQL 5.7 이전에는 사용자가 잘못된 SQL 문을 입력하고 Ctrl+C를 누르면 실행이 "종료"될 수 있었지만 그러나 SQL 문은 현재 세션도 종료됩니다. MySQL 5.7은 이러한 반직관적인 측면을 개선하여 더 이상 세션을 종료하지 않습니다.

MySQL 5.7은 실행 중인 SQL을 설명할 수 있는데, 이는 DBA가 실행하는 데 오랜 시간이 걸리는 명령문을 분석하는 데 매우 유용합니다.

sys 스키마는 MySQL 5.7.7에 도입된 시스템 라이브러리로, 일련의 뷰, 함수 및 저장 프로시저를 포함하고 있으며 이 프로젝트는 MySQL의 사용 편의성에 중점을 두고 있습니다.

Availability

복제된 필터링 규칙의 온라인 설정 더 이상 MySQL을 다시 시작할 필요가 없으며, 수정이 완료된 후 SQLthread를 중지하면 됩니다.

버퍼 풀 크기를 온라인으로 수정하세요.

온라인 DDL MySQL 5.7은 인덱스 이름 변경 및 varchar 크기 수정을 지원합니다. 이전 버전에서는 이 두 작업을 수행하려면 인덱스 또는 테이블을 다시 작성해야 했습니다.

온라인에서 GTID 켜기 이전 버전에서는 GTID 온라인 켜기가 지원되지 않았기 때문에 사용자가 하위 버전의 데이터베이스를 GTID를 지원하는 데이터베이스 버전으로 업그레이드하려면 먼저 데이터베이스를 닫은 후 시작해야 합니다. 업그레이드가 매우 번거로운 GTID 모드입니다.

Performance

임시 테이블의 성능이 향상되었습니다.

임시 테이블은 현재 세션에서만 볼 수 있습니다.

임시 테이블의 수명 주기는 현재 연결입니다(MySQL이 다운되거나 다시 시작되면 현재 연결이 종료됩니다)

읽기 전용 트랜잭션 성능이 향상됩니다.

MySQL 5.7은 읽기 전용 트랜잭션에 트랜잭션 ID를 할당하지 않고, 읽기 전용 트랜잭션에 롤백 세그먼트를 할당하지 않고, 잠금 경쟁을 줄여서 읽기 전용 트랜잭션의 오버헤드를 최적화하고 데이터베이스의 전반적인 성능을 향상시킵니다.

-연결 처리 가속화

MySQL 5.7 이전에는 연결 수신 스레드에서 변수 초기화 작업(THD, VIO)이 완료되었습니다. 이제 이러한 작업은 연결 수신 스레드의 작업 부하를 줄이기 위해 작업자 스레드로 전송됩니다. 연결 처리 속도. 이 최적화는 짧은 연결을 자주 설정하는 애플리케이션에 매우 유용합니다.

복제 성능 향상(멀티 스레드 슬레이브 지원, MTS라고도 함)

MySQL의 기본 구성은 라이브러리 수준 병렬 복제입니다. MySQL 5.7의 병렬 복제 기능을 최대한 활용하려면 슬레이브가 필요합니다. 병렬 유형은

다중 소스 복제 지원

STRICT_TRANS_TABLES 모드가 기본적으로 활성화됩니다.

ONLY_FULL_GROUP_BY 모드에 대해 더 복잡한 기능 지원도 기본적으로 활성화됩니다. 기본적으로 활성화된 다른 SQL 모드는 NO_ENGINE_SUBSTITUTION입니다.

기본 매개변수 변경

기본 binlog 형식은 ROW 형식

으로 조정됩니다.

binlog 오류 후 기본 동작은 ABORT_SERVER로 조정됩니다

이전 옵션(binlog_error_action=IGNORE_ERROR)에서 오류가 발생하고 binlog를 쓸 수 없는 경우 mysql-server는 해당 오류를 오류 로그에 기록하고 binlog 기능을 강제 실행합니다. 꺼집니다. 이로 인해 mysql-server는 binlog를 기록하지 않는 모드로 계속 실행되어 슬레이브 라이브러리가 메인 라이브러리의 binlog를 계속 얻을 수 없게 됩니다.

mysql 충돌 시 Binlog 보안은 기본적으로 활성화되어 있습니다.

Slave_net_timeout은 기본적으로 낮아집니다.

다른 설치

mysql_install_db는 더 이상 권장되지 않습니다. 인스턴스 초기화를 완료하려면 mysqld --initialize로 변경하는 것이 좋습니다. datadir이 가리키는 대상 디렉터리에 이미 데이터 파일이 있는 경우 [ERROR] Aborting이 발생합니다.

초기화 중에 --initial-insecure를 추가하면 비밀번호가 비어 있는 root@localhost 계정이 생성됩니다. 비밀번호는 root@localhost 계정으로 생성됩니다. 비밀번호는 로그 오류 로그 파일에 직접 기록됩니다. 신규 사용자는 로그인 후 즉시 비밀번호를 변경해야 합니다. 그렇지 않으면 후속 작업을 계속할 수 없습니다.

추천 학습: mysql 비디오 튜토리얼

위 내용은 mysql에서 5.6과 5.7의 차이점은 무엇입니까의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
MySQL의 라이센스는 다른 데이터베이스 시스템과 어떻게 비교됩니까?MySQL의 라이센스는 다른 데이터베이스 시스템과 어떻게 비교됩니까?Apr 25, 2025 am 12:26 AM

MySQL은 GPL 라이센스를 사용합니다. 1) GPL 라이센스는 MySQL의 무료 사용, 수정 및 분포를 허용하지만 수정 된 분포는 GPL을 준수해야합니다. 2) 상업용 라이센스는 공개 수정을 피할 수 있으며 기밀이 필요한 상업용 응용 프로그램에 적합합니다.

MyISAM을 통해 언제 innodb를 선택 하시겠습니까?MyISAM을 통해 언제 innodb를 선택 하시겠습니까?Apr 25, 2025 am 12:22 AM

MyISAM 대신 InnoDB를 선택할 때의 상황에는 다음이 포함됩니다. 1) 거래 지원, 2) 높은 동시성 환경, 3) 높은 데이터 일관성; 반대로, MyISAM을 선택할 때의 상황에는 다음이 포함됩니다. 1) 주로 읽기 작업, 2) 거래 지원이 필요하지 않습니다. InnoDB는 전자 상거래 플랫폼과 같은 높은 데이터 일관성 및 트랜잭션 처리가 필요한 응용 프로그램에 적합하지만 MyISAM은 블로그 시스템과 같은 읽기 집약적 및 트랜잭션이없는 애플리케이션에 적합합니다.

MySQL에서 외국 키의 목적을 설명하십시오.MySQL에서 외국 키의 목적을 설명하십시오.Apr 25, 2025 am 12:17 AM

MySQL에서 외국 키의 기능은 테이블 간의 관계를 설정하고 데이터의 일관성과 무결성을 보장하는 것입니다. 외국 키는 참조 무결성 검사 및 계단식 작업을 통해 데이터의 효과를 유지합니다. 성능 최적화에주의를 기울이고 사용할 때 일반적인 오류를 피하십시오.

MySQL의 다른 유형의 인덱스는 무엇입니까?MySQL의 다른 유형의 인덱스는 무엇입니까?Apr 25, 2025 am 12:12 AM

MySQL에는 B-Tree Index, Hash Index, Full-Text Index 및 공간 인덱스의 네 가지 주요 인덱스 유형이 있습니다. 1.B- 트리 색인은 범위 쿼리, 정렬 및 그룹화에 적합하며 직원 테이블의 이름 열에서 생성에 적합합니다. 2. HASH 인덱스는 동등한 쿼리에 적합하며 메모리 저장 엔진의 HASH_Table 테이블의 ID 열에서 생성에 적합합니다. 3. 전체 텍스트 색인은 기사 테이블의 내용 열에서 생성에 적합한 텍스트 검색에 사용됩니다. 4. 공간 지수는 지리 공간 쿼리에 사용되며 위치 테이블의 Geom 열에서 생성에 적합합니다.

MySQL에서 인덱스를 어떻게 생성합니까?MySQL에서 인덱스를 어떻게 생성합니까?Apr 25, 2025 am 12:06 AM

toreateanindexinmysql, usethecreateindexstatement.1) forasinglecolumn, "createindexidx_lastnameonemployees (lastname);"2) foracompositeIndex를 사용하고 "createDexIdx_nameonemployees (forstName, FirstName);"3)을 사용하십시오

MySQL은 sqlite와 어떻게 다릅니 까?MySQL은 sqlite와 어떻게 다릅니 까?Apr 24, 2025 am 12:12 AM

MySQL과 Sqlite의 주요 차이점은 설계 개념 및 사용 시나리오입니다. 1. MySQL은 대규모 응용 프로그램 및 엔터프라이즈 수준의 솔루션에 적합하며 고성능 및 동시성을 지원합니다. 2. SQLITE는 모바일 애플리케이션 및 데스크탑 소프트웨어에 적합하며 가볍고 내부질이 쉽습니다.

MySQL의 색인이란 무엇이며 성능을 어떻게 향상 시키는가?MySQL의 색인이란 무엇이며 성능을 어떻게 향상 시키는가?Apr 24, 2025 am 12:09 AM

MySQL의 인덱스는 데이터 검색 속도를 높이는 데 사용되는 데이터베이스 테이블에서 하나 이상의 열의 주문 구조입니다. 1) 인덱스는 스캔 한 데이터의 양을 줄임으로써 쿼리 속도를 향상시킵니다. 2) B-Tree Index는 균형 잡힌 트리 구조를 사용하여 범위 쿼리 및 정렬에 적합합니다. 3) CreateIndex 문을 사용하여 CreateIndexIdx_customer_idonorders (customer_id)와 같은 인덱스를 작성하십시오. 4) Composite Indexes는 CreateIndexIdx_customer_orderOders (Customer_id, Order_Date)와 같은 다중 열 쿼리를 최적화 할 수 있습니다. 5) 설명을 사용하여 쿼리 계획을 분석하고 피하십시오

MySQL에서 트랜잭션을 사용하여 데이터 일관성을 보장하는 방법을 설명하십시오.MySQL에서 트랜잭션을 사용하여 데이터 일관성을 보장하는 방법을 설명하십시오.Apr 24, 2025 am 12:09 AM

MySQL에서 트랜잭션을 사용하면 데이터 일관성이 보장됩니다. 1) STARTTRANSACTION을 통해 트랜잭션을 시작한 다음 SQL 작업을 실행하고 커밋 또는 롤백으로 제출하십시오. 2) SavePoint를 사용하여 부분 롤백을 허용하는 저장 지점을 설정하십시오. 3) 성능 최적화 제안에는 트랜잭션 시간 단축, 대규모 쿼리 방지 및 격리 수준을 합리적으로 사용하는 것이 포함됩니다.

See all articles

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

Video Face Swap

Video Face Swap

완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

뜨거운 도구

안전한 시험 브라우저

안전한 시험 브라우저

안전한 시험 브라우저는 온라인 시험을 안전하게 치르기 위한 보안 브라우저 환경입니다. 이 소프트웨어는 모든 컴퓨터를 안전한 워크스테이션으로 바꿔줍니다. 이는 모든 유틸리티에 대한 액세스를 제어하고 학생들이 승인되지 않은 리소스를 사용하는 것을 방지합니다.

PhpStorm 맥 버전

PhpStorm 맥 버전

최신(2018.2.1) 전문 PHP 통합 개발 도구

MinGW - Windows용 미니멀리스트 GNU

MinGW - Windows용 미니멀리스트 GNU

이 프로젝트는 osdn.net/projects/mingw로 마이그레이션되는 중입니다. 계속해서 그곳에서 우리를 팔로우할 수 있습니다. MinGW: GCC(GNU Compiler Collection)의 기본 Windows 포트로, 기본 Windows 애플리케이션을 구축하기 위한 무료 배포 가능 가져오기 라이브러리 및 헤더 파일로 C99 기능을 지원하는 MSVC 런타임에 대한 확장이 포함되어 있습니다. 모든 MinGW 소프트웨어는 64비트 Windows 플랫폼에서 실행될 수 있습니다.

맨티스BT

맨티스BT

Mantis는 제품 결함 추적을 돕기 위해 설계된 배포하기 쉬운 웹 기반 결함 추적 도구입니다. PHP, MySQL 및 웹 서버가 필요합니다. 데모 및 호스팅 서비스를 확인해 보세요.

VSCode Windows 64비트 다운로드

VSCode Windows 64비트 다운로드

Microsoft에서 출시한 강력한 무료 IDE 편집기