MySQL 바이너리 설치의 장점은 어떤 경로에도 설치가 가능하고 하나의 서버에 여러 MySQL 인스턴스를 설치할 수도 있다는 점입니다. 이 방법의 단점은 컴파일되기 때문에 소스 코드에서 컴파일한 버전만큼 성능이 좋지 않고 컴파일 매개변수를 유연하게 사용자 정의할 수 없다는 것입니다. 사용자가 가장 단순하지만 융통성이 없는 RPM 패키지를 설치하고 싶지 않고 복잡하고 시간이 많이 걸리는 소스 코드 패키지를 설치하고 싶지 않다면 컴파일된 바이너리 패키지가 최선의 선택이 될 것입니다.
mysql 공식 홈페이지 : https://dev.mysql.com/downloads/mysql/
mysql-8.0.23-linux를 다운받았으니까 - glibc2.12-x86_64.tar 버전, 최신 버전이 있으면 최신 버전을 다운로드하면 됩니다.
데이터 디렉터리 생성을 통해 설치 패키지를 Linux 시스템 패키지 디렉터리로 전송
--切换到安装目录 cd /app --解压xz压缩文件 tar -xvf /app/package/mysql-8.0.23-linux-glibc2.12-x86_64.tar.xz
mysql 사용자 그룹 및 mysql 사용자 생성
--把mysql-8.0.23-linux-glibc2.12-x86_64修改为mysql文件夹名称 mv /app/mysql-8.0.23-linux-glibc2.12-x86_64 /app/mysql
--在mysql根目录下创建data目录,用于存放数据 mkdir /app/mysql/data
--创建mysql用户组和mysql用户 groupadd mysql useradd -g mysql mysql
Configure mysql
--修改mysql目录权限 chown -R mysql.mysql /app/mysql/
my.cnf 다음 구성 내용을 입력하세요.
--先切换到mysql安装目录 cd /app/mysql --初始化数据库 bin/mysqld --initialize --user=mysql --basedir=/app/mysql --datadir=/app/mysql/data
환경 변수 구성
--先切换到mysql.support-files目录 cd /app/mysql/support-files --在mysql/support-files创建文件my-default.cnf touch my-default.cnf --复制配置文件到/etc/my.cnf cp -a ./my-default.cnf /etc/my.cnf --编辑my.cnf vim /etc/my.cnf
Mysql 시작
[client] port=3306 socket=/tmp/mysql.sock [mysqld] port=3306 user=mysql socket=/tmp/mysql.sock basedir=/app/mysql datadir=/app/mysql/data
mysql을 시작할 때 다음 오류가 발생할 수 있습니다.
mysqld를 시작하지 못했습니다. 서비스: 유닛을 찾을 수 없습니다.
또는
MySQL을 시작합니다.'/app /mysql/data/dengwu.err'.... PID 파일을 업데이트하지 않고 서버가 종료되었습니다(/ app/mysql/data/dengwu.pid).
해결 방법은 다음과 같습니다.
--编辑profile文件 vim /etc/profile --配置mysql环境变量 PATH=/data/mysql/bin:/data/mysql/lib:$PATH export PATH --使mysql环境变量生效 source /etc/profile --看环境变量是否生效 echo $PATH
제어 프로세스가 오류 코드로 종료되어 mariadb.service에 대한 작업이 실패했습니다. "systemctl status mariadb.service"를 참조하세요. 자세한 내용은 "journalctl -xe"를 참조하세요.
해결 방법은 다음과 같습니다.
cd /app/mysql/bin systemctl start mysqld or service mysql start
해결 방법은 다음과 같습니다.
--需要安装mariadb-server yum install -y mariadb-server --然后启动mariadb服务 systemctl start mariadb.service --需要的可以添加mariadb服务开机启动 systemctl enable mariadb.service
그런 다음 mysql을 다시 시작합니다.
4. mysql 비밀번호 변경 루트 사용자는 처음으로 mysql에 로그인합니다. 왜냐하면 우리는 초기 비밀번호를 모르기 때문입니다. 일반적으로 새 비밀번호를 재설정합니다.
chown -R mysql.mysql /app/mysql/
다음 명령줄을 입력하세요.
--查看mysql进程 ps -ef|grep mysqld --杀死mysql进程 kill -9 mysql进程ID
비밀번호를 잊어버린 경우 다시 시도하세요. 추가:
--编辑my.cnf vim /etc/my.cnf
그런 다음 mysql에 로그인하세요.
default_authentication_plugin=mysql_native_password
--跳过密码验证(等设置了密码就去掉) skip-grant-tables
루트 사용자에게 원격 연결 권한이 활성화되어 있지 않은지 확인하십시오. 그렇지 않은 경우 다음 명령을 실행하십시오.
--登录mysql mysql -u root -p
권한을 얻은 후 원격 연결 활성화. , 루트 사용자 비밀번호 변경:
--查看mysql用户表 select user,host,authentication_string from mysql.user;
--修改root用户可以远程连接 update mysql.user set host='%' where user='root';
--如果host是localhost则@字符后面是localhost,反之则是%,以host结果为准 --修改加密规则 alter user 'root'@'%' identified by 'qwer1234' password expire never; --更新一下用户的密码 alter user 'root'@'%' identified with mysql_native_password by 'qwer1234'; --刷新权限 flush privileges; --修改root用户密码 alter user 'root'@'%' identified by 'qwer1234';
5. mysql Alibaba Cloud 보안 그룹 정책 구성
Alibaba Cloud->보안 그룹 규칙->액세스 규칙->인바운드 방향->에 로그인하여 다음 정책을 수동으로 추가하세요.
Navicat을 사용하여 연결 성공:
위 내용은 Linux 환경에서 MySQL 데이터베이스를 설치하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!