Linux – CentOS 7 구축 MySQL5.6 데이터베이스 서버 및 구성 상세 정보
1. MariaDB를 마운트 해제
rpm -qa |grep -i mariadb
yum remove MariaDB-*
주: 위의 두 명령을 다시 한 번 해제할 수 있습니다. - 삭제/etc/my.cnf
rm /etc/my.cnf
2. MySQL 설치
오프라인 설치 패키지 다운로드
https://dev.mysql.com/downloads/mysql/5.6.html
Red Hat Enterprise Linux 7 / Oracle Linux 7 (x86, 64-bit), RPM Bundle
MySQL-5.6.40-1.el7.x86_64.rpm-bundle.tar
윈도우즈 플랫폼에서 다운로드한 tar 패키지라면 WinSCP 소프트웨어를 통해 CentOS 시스템에 복사할 수 있습니다 - tar 설치 패키지 압축 해제/usr/local/디렉터리에 다운로드한 압축 해제 명령을 실행합니다
tar -xvf MySQL-5.6.40-1.el7.x86_64.rpm-bundle.tar
MySQL 설치
su - root
rpm -ivh MySQL-*
systemctl start mysql
ps -ef | grep mysql
cat /root/.mysql_secret
A RANDOM PASSWORD HAS BEEN SET FOR THE MySQL root USER ! You will find that password in ‘/root/.mysql_secret’.
You must change that password on your first connect, no other statement but ‘SET PASSWORD’ will be accepted. See the manual for the semantics of the ‘password expired’ flag.
Also, the account for the anonymous user has been removed.
In addition, you can run:
/usr/bin/mysql_secure_installation
which will also give you the option of removing the test database. This is strongly recommended for production servers.
MySQL의 루트 사용자를 위한 랜덤 비밀번호를 설정합니다!"/root/.mysqlsecret"에서 이 비밀번호를 찾을 수 있습니다.
너는 첫 번째 연결에서 비밀번호를 바꿔야 해. - 랜덤 비밀번호로 로그인한 후에 비밀번호를 바꿔.
mysql -uroot -p
SET PASSWORD = PASSWORD('root');
touch /usr/lib/systemd/system/mysql.service
2. 편집/usr/lib/systemd/system/mysql.서비스 파일
vim /usr/lib/systemd/system/mysql.service
3. mysql에서.서비스 파일에는 다음과 같은 구성이 추가됩니다.
[Unit]
Description=MySQL Server
Documentation=man:mysqld(8)
Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html
After=network.target
After=syslog.target
[Install]
WantedBy=multi-user.target
[Service]
User=mysql
Group=mysql
ExecStart=/usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf
LimitNOFILE = 5000
ExecStart=/usr/local/mysql/bin/mysqld (MySQL 프로그램이 있는 경로로 변경하십시오) 4.전원 켜기 부팅 설정
systemctl enable mysql.service
참고: MySQL의 기본 설치 위치
/var/lib/mysql/ #
/usr/share/mysql #
/usr/bin #
/etc/init.d/mysql #
2. MySQL 구성
MySQL 간단한 구성
/usr/bin/mysql_secure_installation
MySQL 문자 세트 구성
vim /etc/my.cnf
[client]
password = root
port = 3306
default-character-set=utf8
[mysqld]
port = 3306
character_set_server=utf8
character_set_client=utf8
collation-server=utf8_general_ci
#( linux mysql : , ; 0: ,1: )
lower_case_table_names=1
#( , 151,MySQL 16384; )
max_connections=1000
[mysql]
default-character-set = utf8
systemctl restart mysql
show variables like "%character%";
show variables like "%collation%";
이 때 데이터베이스에 원격 로그인하려면 먼저 권한을 설정해야 한다
3. 사용자 권한 설정
사용자 작성
grant 권한 on 데이터베이스.*to 사용자 이름@호스트 identified by "암호"에 로그인하기;
grant 방식으로 사용자를 보다 완벽하게 만들려면 다음과 같이 하십시오.
데이터베이스에 사용자가 존재할 때 GRANT는 사용자에게 권한을 부여하지만 데이터베이스에 사용자가 존재하지 않을 때 해당하는 사용자를 만들고 권한을 부여한다. -로컬 로그인 사용자 만들기
create user username@localhost identified by 'password';
# `username` ip password
grant all privileges on *.* to username@'%' identified by 'password';
참고:
select Host,User from mysql.user;
user
show grants for user;
user ( )
GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,ALTER ON .* TO user@'%' IDENTIFIED BY ' ';
user
grant all privileges on *.* to user@localhost identified by ' ';
user
grant all privileges on .* to user@'%' identified by ' ';
user
grant all privileges on *.* to user@'%' identified by ' ';
사용자 권한 목록 조회
use mysql
SELECT User, Host, password FROM user;
show grants for user;
4. 문제집
(1) 비밀번호를 잊어버렸어요?
systemctl stop mysql
mysqld_safe --skip-grant-tables &
mysql -u root
update mysql.user set password=PASSWORD('newpassword') where User='root’;
flush privileges;
systemctl start mysql
총결산
참고 자료
MySQL 작성 사용자**
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
LVM에서 논리 볼륨 크기 확장 시도며칠 전 저희 부서에서 관리하던 데이터베이스 서버의 용량이 100%에 이르러 세상을 떠났기 때문에 저는 새로운 디스크를 추가하여 LVM으로 논리 볼륨의 크기를 확장하고 회복했습니다. 하지만 이 일은 모르는 단어와 지...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.