집 >데이터 베이스 >MySQL 튜토리얼 >Linux에서 여러 mysql5.7.19(tar.gz) 설치에 대한 자세한 그래픽 튜토리얼
이 글에서는 주로 Linux에서의 여러 mysql5.7.19tar.gz 설치 튜토리얼을 자세히 소개하고 있습니다. 관심 있는 친구들은 참고하시기 바랍니다.
Linux에서 MySQL을 처음 설치하는 초보자를 위한 - 5.7에 대해서는 이전 글을 읽어주세요. .19 버전 튜토리얼을 이미 설치했다면 이 글을 읽고 Linux에 여러 개의 mysql-5.7.19를 설치하세요.
환경: centos 6.5
1-Download
2-로그인 건너뛰기
3-1 여러 데이터베이스를 설치하려면 자체 my.cnf를 구성해야 하며 이전에 시스템을 설치하지 않은 경우 이 명령을 사용하세요
shell> groupadd mysql shell> useradd -r -g mysql -s /bin/false mysql shell> cd /usr/local shell> tar zxvf /path/to/mysql-VERSION-OS.tar.gz shell> ln -s full-path-to-mysql-VERSION-OS mysql shell> cd mysql shell> mkdir mysql-files 查看下有没有data目录如果没有的话增加个命令(mkdir data) shell> chmod 750 mysql-files shell> chown -R mysql . shell> chgrp -R mysql . shell> bin/mysql_install_db --user=mysql # MySQL 5.7.5 shell> bin/mysqld --initialize --user=mysql # MySQL 5.7.6 and up shell> bin/mysql_ssl_rsa_setup # MySQL 5.7.6 and up shell> chown -R root . shell> chown -R mysql data mysql-files shell> bin/mysqld_safe --user=mysql & # Next command is optional shell> cp support-files/mysql.server /etc/init.d/mysql.server
to install it 로그인 5단계로 바로 이동할 수 있습니다.
다음은 여러 개의 mysql을 설치하는 방법입니다.
3-2 여러 개의 데이터베이스를 설치하려면 다음 명령을 따라야 합니다.
1-구성 파일 my.dll을 추가합니다. cnf(mysql 디렉터리에서 touch my.cnf 명령 실행):
다음 구성 파일은 Paste
를 사용하여 직접 복사할 수 있습니다. 그런 다음 /xcxyz/log/mysql/error.log
[mysqld] basedir= /usr/local/mysql-5.7.19-3307 datadir = /usr/local/mysql-5.7.19-3307/data port = 3307 character-set-server=utf8 server_id = 11 #该socket最好指定,不指定的话默认的话 是使用的默认的socket文件 而且登陆数据库的时候会有我下面的问题 socket = /tmp/mysql3307.sock log-error = /xcxyz/log/mysql/error.log pid-file = /usr/local/mysql-5.7.19-3307/data/mysql-5.7.19-3307.pid
2-다음 명령을 실행합니다
2-1 사용자 그룹을 추가합니다. 내 사용자와 그룹은 모두 mysqlosf를 사용합니다.
shell> groupadd mysql shell> useradd -r -g mysql -s /bin/false mysql shell> cd /usr/local shell> tar zxvf /path/to/mysql-VERSION-OS.tar.gz
2-2 소프트 연결 설정:
shell> ln -s full-path-to-mysql-VERSION-OS mysql shell> cd mysql shell> mkdir mysql-files
데이터 디렉터리가 있는지 확인하세요. 없으면 명령을 추가하세요(mkdir 데이터).
2-3 현재 디렉터리에 권한을 부여하세요.
shell> chmod 750 mysql-files shell> chown -R mysqlosf . shell> chgrp -R mysqlosf .
2-4 컴파일
bin/mysqld -- defaults-file=/usr/local/full-path-to-mysql-VERSION-OS /my.cnf --initialize --user=mysqlosf
로그 출력 보기: vi /xcxyz/log/mysql/error. log
2017-07-24T03:13:47.933684Z 0 [경고] 암시적 DEFAULT 값이 있는 TIMESTAMP는 더 이상 사용되지 않습니다. --explicit_defaults_for_timestamp 서버 옵션을 사용하세요(자세한 내용은 설명서 참조).
2017-07-24T03:13:49.979892Z 0 [경고] InnoDB: 새로운 로그 파일이 생성되었습니다. LSN=45790
2017-07-24T03: 13:50.262941Z 0 [경고] InnoDB: 외래 키 제약 조건 시스템 테이블을 생성합니다.
2017-07-24T03:13:50.330756Z 0 [경고] 기존 UUID가 발견되지 않아 이 서버가 처음 시작된 것으로 가정합니다. 새 UUID 생성: 1d702294-701e-11e7-98a1-00163e30bbf6.
2017-07-24T03:13: 50.340474Z 0 [경고] Gtid 테이블을 사용할 준비가 되지 않았습니다. 테이블 'mysql.gtid_executed'를 열 수 없습니다.
2017-07-24T03:13:50.344419Z 1 [참고] root@localhost에 대해 임시 비밀번호가 생성됩니다. jZpgHhigx5>i (나중에 비밀번호를 초기화하는 것이 특히 중요합니다)
2-5 키 설정
shell> bin/mysql_ssl_rsa_setup --defaults-file=/usr/local/mysql-5.7.19-3307/my.cnf
2-6 할당 재승인
shell> chown -R root . shell> chown -R mysql data mysql-files
2-7 백그라운드 mysql 시작
bin/mysqld_safe --defaults-file=/usr/local/full-path-to-mysql-VERSION-OS/my.cnf --user=mysqlosf &
다음 명령은 선택 사항입니다.
shell> cp support-files/mysql.server /etc/init.d/mysql.server
2-8 보기 mysql이 ps -ef를 시작합니까 | grep mysql
4 지금 바로 mysql에 로그인하여 비밀번호를 변경하고 임시 비밀번호를 사용하세요.
또 문제가 생겼네요 ㅎㅎ 로그인이 안되네요
사용자 'root'@ 'localhost'에 대한 접근이 거부되었습니다. (비밀번호 사용:YES) 해결방법은 맨 밑에 있습니다
로그인하시면 에서 임시 비밀번호를 사용하여 직접 로그인하고 비밀번호를 설정할 수 있습니다
5 - MySQL에 로그인한 후 비밀번호를 즉시 변경해야 하며, 그렇지 않으면 어떤 작업도 수행할 수 없습니다. 'root'@'localhost'의 비밀번호를 변경하려면 다음 명령을 실행하세요:
SET PASSWORD = PASSWORD('root'); ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER; flush privileges;
6 - 원격으로 로그인하려면 'root'@'%' 계정을 추가하세요:
grant all privileges on *.* to 'root'@'%' identified by 'root' with grant option;
7-로컬 연결 테스트
위의 방법에 따라 계속해서 mysql-5.7.19-linux-glibc2.5-x86_64.tar.gz의 압축을 풀고 설치하고 포트 3308 및 3309를 구성합니다. 여러 개의 mysql을 설치할 수 있습니다.
솔루션 설치 후 로그인이 되지 않습니다.
위와 같은 경우
이유는 아래 빨간색 상자의 영어가 내 것입니다. 두 번째 mysql에서는 소켓과 포트를 지정해야 합니다. 소켓을 지정하지 않으면 여러 개의 mysql을 설치하기 때문에 기본 소켓이 선택되므로 이를 지정해야 합니다
mysql --socket=/tmp/mysql3307.sock --port=3307 -uroot -p
여기서 실수로 비밀번호를 분실했거나 비밀번호가 만료된 경우 다음을 수행할 수 있습니다. 다음 방법으로 비밀번호를 재설정하세요:
5-重置密码:
5-1关闭进程
kill `cat /usr/local/mysql-5.7.19-3307/data/mysql-5.7.19-3307.pid`
5-2创建文件mysql-init
5-2-1文件内容
第一种内容:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'mysqlosf';
保存内容之后启动
代码如下:
bin/mysqld_safe --defaults-file=/usr/local/mysql-5.7.19-3307/my.cnf --init-file=/usr/local/mysql-5.7.19-3307/mysql-init --user=mysqlosf &
如果上述内容不成功选择第二种内容
UPDATE mysql.user SET authentication_string = PASSWORD('MyNewPass'), password_expired = 'N' WHERE User = 'root' AND Host = 'localhost'; FLUSH PRIVILEGES;
保存内容之后启动
代码如下:
bin/mysqld_safe --defaults-file=/usr/local/mysql-5.7.19-3307/my.cnf --init-file=/usr/local/mysql-5.7.19-3307/mysql-init --user=mysqlosf &
위 내용은 Linux에서 여러 mysql5.7.19(tar.gz) 설치에 대한 자세한 그래픽 튜토리얼의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!