빌드로 리눅스 환경 (D) - MYSQL

리눅스 시스템 버전 :  에 CentOS 7.7 64 웨이

설치 소스 파일 버전 : mysql을 - 5.7.21 - 리눅스 - glibc2.12-x86_64.tar.gz

MySQL의 설치 위치 : / usr / 지방 / mysql을

데이터베이스 파일 데이터의 위치 : / usr / 지방 / 데이터 / mysql을

1,은 / usr / 지방 / 디렉토리 폴더 / 데이터 / MySQL의를 생성에

2, 업로드 mysql을 - 5.7.21 - 리눅스 - glibc2.12-x86_64.tar.gz 파일을 압축 해제 mysql을 - 5.7.21 - 리눅스 - glibc2.12-x86_64.tar.gz에서 / usr / 지방 /에

 타르 -zxvf mysql을 - 5.7.21 - 리눅스 - glibc2.12-x86_64.tar.gz

3, 변경된 파일은 폴더 이름을 압축 해제

MV /usr/local/mysql-5.7.21-linux-glibc2.12-x86_64/의 경우 / usr / local / mysql

 

4, MySQL의 사용자와 MySQL 사용자 그룹을 만들

groupadd mysql을

useradd와 -r -g mysql을 mysql을

 

(5) 사용자 myql 연관된 사용자 그룹의 MySQL

대한 Chown -R mysql을한다 : mysql의 경우 / usr / local / mysql /

대한 Chown -R mysql을한다 : mysql / usr / 지방 / 데이터 / mysql을 /

대한 Chown -R mysql을 / usr / 지방 / mysql을 /

대한 Chown MySQL은 -R / usr / 지방 / 데이터 / MySQL을

 

6, 설치 폴더의 권한을 변경 mysql을 mysql을 / A

chmod를 -R 755 / usr / 지방 / mysql을 /

 

7, 설치 종속성가 libaio

쿼리 정전가 libaio 의존성 여부

냠가 libaio 검색

설치되지 않은 경우 설치하려면 다음 명령을 사용할 수 있습니다

냠가 libaio 설치

 

8, MySQL의 명령을 초기화

CD의 경우 / usr / local / mysql / 빈

./mysqld --user = MySQL의 --basedir = / usr / 지방 / MySQL을 --datadir = / usr / 지방 / 데이터 / MySQL을 --initialize

내용에 특히주의를 기울여 위의 명령 라인의 구현에서   

[Note] A temporary password is generated for root@localhost: o*s#gqh)F4Ck

루트 @ localhost를 : MySQL의 데이터베이스를 기록하는 임시 암호를 사용하여 다음, 각각의 하나는 생성 된 임시 비밀번호가 동일하지 않습니다 설치

다음과 같이 초기화가 제공되는 경우 :

오류를로드 공유 라이브러리 동안 : libnuma.so.1는 : objec 공유 열 수 없습니다

libnuma 여기에 우리가 필요로하는 32 비트, 64 비트를 설치하기 때문에, 다음과 같은 문을 해결할 수 있습니다 실행

#yum numactl.x86_64 설치

의 구현 후 MySQL의 명령을 재 초기화

 
9, 구성 파일의 MySQL을 수정
정력 /usr/local/mysql/support-files/mysql.server
두 선이 같은 다음있는 다음을 수정합니다 :
 

BASEDIR = / usr / 지방 / MySQL을
DATADIR = / usr / 지방 / 데이터 / MySQL을

저장하고 종료

 

10, mysql.server를 시작 스크립트 / init.d를 / mysqld를 등을 복사하고 권한을 변경하려면

CP /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
chmod를 755 /etc/init.d/mysqld

11 포트 3306를 지정 my.cnf 파일을 수정

#vi /etc/my.cnf에

(가)의 my.cnf 파일의 현재 내용을 대체하기 위해 다음의 내용을 복사

[클라이언트]
노 경고음
소켓 = / usr / 지방 / MySQL은 / mysql.sock의
# 파이프
# 소켓 = 0.0
포트 = 3306
[MySQL의]
기본 문자 세트 = UTF8
[mysqld를]
BASEDIR = / usr / 지방 / MySQL을
DATADIR = / usr / 지방 / 데이터 / MySQL의
포트 = 3306
PID 파일 = / usr / 지방 / mysql을 / mysqld.pid
# 건너 - 부여 - 테이블을
건너 - 이름 - 해결
소켓 = /usr/local/mysql/mysql.sock
문자 - 설정 서버 = UTF8의
기본 스토리지 엔진 = INNODB
explicit_defaults_for_timestamp = TRUE
# 서버 ID입니다.
서버 ID = 1
MAX_CONNECTIONS = 2,000
query_cache_type을 = 0
table_open_cache = 2,000
tmp_table_size 변수 = 246M
thread_cache_size = 300
# 각 데이터베이스에 대한 스레드 스택의 크기를 정의합니다. 대부분의 응용 프로그램에 대한 기본 설정은 충분
192K를 thread_stack =
key_buffer_size = 512M
read_buffer_size = 4M로
read_rnd_buffer_size = 32M의
innodb_data_home_dir를 = / usr / 지방 / 데이터 / MySQL을
에서 innodb_flush_log_at_trx_commit = 0
innodb_log_buffer_size = 16M
innodb_buffer_pool_size = 256M
innodb_log_file_size = 128M
에서 innodb_thread_concurrency = 128
innodb_autoextend_increment = 1000
innodb_buffer_pool_instances. 8 =
= 5000 innodb_concurrency_tickets
innodb_old_blocks_time = 1000
innodb_open_files = 300
innodb_stats_on_metadata = 0
innodb_file_per_table. 1 =
innodb_checksum_algorithm = 0
back_log = 80
flush_time = 0
join_buffer_size = 128M
의 max_allowed_packet = 1024M
max_connect_errors = 2000
open_files_limit = 4161
= 0 query_cache_size를
sort_buffer_size = 32M
table_definition_cache = 1400
binlog_row_event_max_size = 8K
sync_master_info = 10000
sync_relay_log = 10000
sync_relay_log_info = 10000
, 기본값은 8M의 삽입의 효율성을 향상시킬 수있는 데이터 캐시 크기를 삽입 대량입니다 #
bulk_insert_buffer_size = 64M
초 interactive_timeout가 120 =
아웃 (wait_timeout) = 120
로그 신뢰 함 - 함수 크리에이터. 1 =
sql_mode = NO_ENGINE_SUBSTITUTION 상기 STRICT_TRANS_TABLES

#
#은 config 디렉토리의 모든 파일을 포함
#을
! includedir을 /etc/my.cnf.d

저장하고 종료

 

12 일 시작 mysql을

시작 /etc/init.d/mysqld

 

13, MySQL의 로그인

/ usr / 지방 / mysql을 / 빈 / mysql을 -u 루트 -p

 

14, 임시 암호를 입력합니다. 임시 비밀번호는 제 8 조 루트 @ localhost를 : 콘텐츠 뒤에

 

15, MySQL의 암호 및 루트에 대한 모든 권리를 수정

MySQL은> 암호 설정 = 암호 ( '루트');

MySQL의> * 모든 권한을 부여 *에.  루트 @ '%'  '루트'로 식별을;

MySQL의> 플러시 특권;

 

16,이 시간 MySQL의 로그인 이름 루트, 루트 암호는, 루트로 로그인하고 테스트 데이터베이스 다음 MyTestDatabase를 만듭니다.

/ usr / 지방 / mysql을 / 빈 / mysql을 -u 루트 -p

암호를 입력

MySQL의> 데이터베이스 다음 MyTestDatabase을 만들;

 

(17)는, 사용자 qiaozhong를 작성, 당신은 모든 호스트, 비밀 번호 (123)에서 로그인 할 수 있습니다.

 MySQL은> 사용자 생성은 '123'에 의해 식별 qiaozhong;

 

18, 테스트 데이터베이스 다음 MyTestDatabase 사용자의 모든 테이블에 대한 모든 권한은 qiaozhong 할당

MySQL의> 다음 MyTestDatabase에 모든 권한을 부여 *에 'qiaozhong' '123'으로 식별.; 

 

19 Navicat는 qiaozhong 사용자 로그인, 비밀번호 123, 포트 3306를 사용하여. 

 

 

추천

출처www.cnblogs.com/gllegolas/p/12092466.html