1. 엔진 설치
root@CyBill-MysqlDev:/home/c0075># useradd mysql root@CyBill-MysqlDev:/># mkdir /data root@CyBill-MysqlDev:/home/c0075># tar -xvf mysql-5.7.17-1.el6.x86_64.rpm-bundle.tar root@CyBill-MysqlDev:/home/c0075># ls mysql-5.7.17-1.el6.x86_64.rpm-bundle.tar mysql-community-common-5.7.17-1.el6.x86_64.rpm mysql-community-embedded-5.7.17-1.el6.x86_64.rpm mysql-community-libs-5.7.17-1.el6.x86_64.rpm mysql-community-server-5.7.17-1.el6.x86_64.rpm mysql-community-client-5.7.17-1.el6.x86_64.rpm mysql-community-devel-5.7.17-1.el6.x86_64.rpm mysql-community-embedded-devel-5.7.17-1.el6.x86_64.rpm mysql-community-libs-compat-5.7.17-1.el6.x86_64.rpm mysql-community-test-5.7.17-1.el6.x86_64.rpm root@CyBill-MysqlDev:/home/c0075># yum install mysql-community-{server,client,common,libs}-* mysql-5.* Loaded plugins: fastestmirror, security Setting up Install Process Examining mysql-community-server-5.7.17-1.el6.x86_64.rpm: mysql-community-server-5.7.17-1.el6.x86_64 Marking mysql-community-server-5.7.17-1.el6.x86_64.rpm to be installed Loading mirror speeds from cached hostfile base | 1.2 kB 00:00 others | 2.9 kB 00:00 update | 3.0 kB 00:00 update/primary_db | 15 MB 00:00 Examining mysql-community-client-5.7.17-1.el6.x86_64.rpm: mysql-community-client-5.7.17-1.el6.x86_64 Marking mysql-community-client-5.7.17-1.el6.x86_64.rpm to be installed Examining mysql-community-common-5.7.17-1.el6.x86_64.rpm: mysql-community-common-5.7.17-1.el6.x86_64 Marking mysql-community-common-5.7.17-1.el6.x86_64.rpm to be installed Examining mysql-community-libs-5.7.17-1.el6.x86_64.rpm: mysql-community-libs-5.7.17-1.el6.x86_64 Marking mysql-community-libs-5.7.17-1.el6.x86_64.rpm to be installed Examining mysql-community-libs-compat-5.7.17-1.el6.x86_64.rpm: mysql-community-libs-compat-5.7.17-1.el6.x86_64 Marking mysql-community-libs-compat-5.7.17-1.el6.x86_64.rpm to be installed No package mysql-5.7.17-1.el6.x86_64.rpm-bundle.tar available. Resolving Dependencies --> Running transaction check ---> Package mysql-community-client.x86_64 0:5.7.17-1.el6 will be installed ---> Package mysql-community-common.x86_64 0:5.7.17-1.el6 will be installed ---> Package mysql-community-libs.x86_64 0:5.7.17-1.el6 will be obsoleting ---> Package mysql-community-libs-compat.x86_64 0:5.7.17-1.el6 will be obsoleting ---> Package mysql-community-server.x86_64 0:5.7.17-1.el6 will be installed ---> Package mysql-libs.x86_64 0:5.1.73-3.el6_5 will be obsoleted --> Finished Dependency Resolution Dependencies Resolved ============================================================================================================================================================================================================================================================================== Package Arch Version Repository Size ============================================================================================================================================================================================================================================================================== Installing: mysql-community-client x86_64 5.7.17-1.el6 /mysql-community-client-5.7.17-1.el6.x86_64 99 M mysql-community-common x86_64 5.7.17-1.el6 /mysql-community-common-5.7.17-1.el6.x86_64 2.5 M mysql-community-libs x86_64 5.7.17-1.el6 /mysql-community-libs-5.7.17-1.el6.x86_64 8.9 M replacing mysql-libs.x86_64 5.1.73-3.el6_5 mysql-community-libs-compat x86_64 5.7.17-1.el6 /mysql-community-libs-compat-5.7.17-1.el6.x86_64 5.4 M replacing mysql-libs.x86_64 5.1.73-3.el6_5 mysql-community-server x86_64 5.7.17-1.el6 /mysql-community-server-5.7.17-1.el6.x86_64 768 M Transaction Summary ============================================================================================================================================================================================================================================================================== Install 5 Package(s) Total size: 884 M Is this ok [y/N]: y Downloading Packages: Running rpm_check_debug Running Transaction Test Transaction Test Succeeded Running Transaction Warning: RPMDB altered outside of yum. ** Found 22 pre-existing rpmdb problem(s), 'yum check' output follows: ipa-client-3.0.0-42.el6.centos.x86_64 has missing requires of sssd >= ('0', '1.11.6', None) ipa-client-3.0.0-42.el6.centos.x86_64 has missing requires of libsss_autofs sssd-ad-1.11.6-30.el6.x86_64 has missing requires of libsss_ldap_common.so()(64bit) sssd-ad-1.11.6-30.el6.x86_64 has missing requires of sssd-common = ('0', '1.11.6', '30.el6') sssd-common-pac-1.11.6-30.el6.x86_64 has missing requires of libsss_child.so()(64bit) sssd-common-pac-1.11.6-30.el6.x86_64 has missing requires of libsss_crypt.so()(64bit) sssd-common-pac-1.11.6-30.el6.x86_64 has missing requires of libsss_debug.so()(64bit) sssd-common-pac-1.11.6-30.el6.x86_64 has missing requires of libsss_util.so()(64bit) sssd-common-pac-1.11.6-30.el6.x86_64 has missing requires of sssd-common = ('0', '1.11.6', '30.el6') sssd-ipa-1.11.6-30.el6.x86_64 has missing requires of libsss_ldap_common.so()(64bit) sssd-ipa-1.11.6-30.el6.x86_64 has missing requires of sssd-common = ('0', '1.11.6', '30.el6') sssd-krb5-1.11.6-30.el6.x86_64 has missing requires of sssd-common = ('0', '1.11.6', '30.el6') sssd-krb5-common-1.11.6-30.el6.x86_64 has missing requires of libsss_child.so()(64bit) sssd-krb5-common-1.11.6-30.el6.x86_64 has missing requires of libsss_debug.so()(64bit) sssd-krb5-common-1.11.6-30.el6.x86_64 has missing requires of sssd-common = ('0', '1.11.6', '30.el6') sssd-ldap-1.11.6-30.el6.x86_64 has missing requires of libsss_ldap_common.so()(64bit) sssd-ldap-1.11.6-30.el6.x86_64 has missing requires of sssd-common = ('0', '1.11.6', '30.el6') sssd-proxy-1.11.6-30.el6.x86_64 has missing requires of libsss_child.so()(64bit) sssd-proxy-1.11.6-30.el6.x86_64 has missing requires of libsss_crypt.so()(64bit) sssd-proxy-1.11.6-30.el6.x86_64 has missing requires of libsss_debug.so()(64bit) sssd-proxy-1.11.6-30.el6.x86_64 has missing requires of libsss_util.so()(64bit) sssd-proxy-1.11.6-30.el6.x86_64 has missing requires of sssd-common = ('0', '1.11.6', '30.el6') Installing : mysql-community-common-5.7.17-1.el6.x86_64 1/6 Installing : mysql-community-libs-5.7.17-1.el6.x86_64 2/6 Installing : mysql-community-client-5.7.17-1.el6.x86_64 3/6 Installing : mysql-community-server-5.7.17-1.el6.x86_64 4/6 Installing : mysql-community-libs-compat-5.7.17-1.el6.x86_64 5/6 Erasing : mysql-libs-5.1.73-3.el6_5.x86_64 6/6 Verifying : mysql-community-server-5.7.17-1.el6.x86_64 1/6 Verifying : mysql-community-libs-compat-5.7.17-1.el6.x86_64 2/6 Verifying : mysql-community-client-5.7.17-1.el6.x86_64 3/6 Verifying : mysql-community-common-5.7.17-1.el6.x86_64 4/6 Verifying : mysql-community-libs-5.7.17-1.el6.x86_64 5/6 Verifying : mysql-libs-5.1.73-3.el6_5.x86_64 6/6 Installed: mysql-community-client.x86_64 0:5.7.17-1.el6 mysql-community-common.x86_64 0:5.7.17-1.el6 mysql-community-libs.x86_64 0:5.7.17-1.el6 mysql-community-libs-compat.x86_64 0:5.7.17-1.el6 mysql-community-server.x86_64 0:5.7.17-1.el6 Replaced: mysql-libs.x86_64 0:5.1.73-3.el6_5 Complete! root@CyBill-MysqlDev:/home/c0075># ls mysql-5.7.17-1.el6.x86_64.rpm-bundle.tar mysql-community-common-5.7.17-1.el6.x86_64.rpm mysql-community-embedded-5.7.17-1.el6.x86_64.rpm mysql-community-libs-5.7.17-1.el6.x86_64.rpm mysql-community-server-5.7.17-1.el6.x86_64.rpm mysql-community-client-5.7.17-1.el6.x86_64.rpm mysql-community-devel-5.7.17-1.el6.x86_64.rpm mysql-community-embedded-devel-5.7.17-1.el6.x86_64.rpm mysql-community-libs-compat-5.7.17-1.el6.x86_64.rpm mysql-community-test-5.7.17-1.el6.x86_64.rpm root@CyBill-MysqlDev:/home/c0075># ps -ef | grep mysqld root 41099 39626 0 10:49 pts/0 00:00:00 grep --color=auto mysqld
root@CyBill-MysqlDev:/home/c0075># cat /etc/passwd mysql:x:10084:10084::/home/mysql:/bin/bash
root@CyBill-MysqlDev:/home/c0075># cat /etc/group mysql:x:10084:
설치 되면 자동으로 다음의 디렉터리에 설치 가 진행 됨.
|
2. DB 생성
위와 같이 설치 디렉터리에 설치가 진행이 되었어도 /var/lib/mysql 파일 밑에는 아무것도 존재 하지 않는다.
엔진만 설치 되었고, 기본 데이터베이스들은 설치 되지 않음.
최초 mysql을 기동 시키면 DB를 설치 함.
root@CyBill-MysqlDev:/data># service mysqld start MySQL µ¥LŸº£L½º Ċ±㈭ : [ OK ] Installing validate password plugin: [ OK ] mysqld (;)¸¦ ½Ā٠: [ OK ] root@CyBill-MysqlDev:/data># ls root@CyBill-MysqlDev:/data># ps -ef | grep mysqld root 43188 1 0 11:29 pts/0 00:00:00 /bin/sh /usr/bin/mysqld_safe --datadir=/var/lib/mysql --socket=/var/lib/mysql/mysql.sock --pid-file=/var/run/mysqld/mysqld.pid --basedir=/usr --user=mysql mysql 43385 43188 1 11:29 pts/0 00:00:00 /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib64/mysql/plugin --user=mysql --log-error=/var/log/mysqld.log --pid-file=/var/run/mysqld/mysqld.pid --socket=/var/lib/mysql/mysql.sock root 43430 39626 0 11:29 pts/0 00:00:00 grep --color=auto mysqld root@CyBill-MysqlDev:/data># cd /var/lib/mysql root@CyBill-MysqlDev:/var/lib/mysql># ls auto.cnf ca-key.pem ca.pem client-cert.pem client-key.pem ib_buffer_pool ib_logfile0 ib_logfile1 ibdata1 ibtmp1 mysql mysql.sock mysql.sock.lock mysqld_safe.pid performance_schema private_key.pem public_key.pem server-cert.pem server-key.pem sys root@CyBill-MysqlDev:/var/lib/mysql># cat /var/log/mysqld.log | grep temporary 2017-01-24T02:29:06.537569Z 1 [Note] A temporary password is generated for root@localhost: yWVtU7Exfn#< 2017-01-24T02:29:16.209967Z 0 [Note] InnoDB: Creating shared tablespace for temporary tables 2017-01-24T02:29:18.267807Z 0 [Note] InnoDB: Removed temporary tablespace data file: "ibtmp1" 2017-01-24T02:29:19.641895Z 0 [Note] InnoDB: Creating shared tablespace for temporary tables
패스워드 변경
root@CyBill-MysqlDev:/var/lib/mysql># mysql -uroot -p Enter password: yWVtU7Exfn#<
mysql> show databases ; ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement. mysql> alter user 'root'@'localhost' IDENTIFIED BY 'Tk2dnjfem!' ; Query OK, 0 rows affected (0.00 sec)
mysql> flush privileges ; Query OK, 0 rows affected (0.00 sec)
|
3. datadir 변경
기본 데이터 디렉터리를 var/lib/mysql --> /data로 변경해 준다.
다음에서 보면 기본 datadir의 위치를 알 수 있음.
root@CyBill-MysqlDev:/data># ps -ef | grep mysqld root 43188 1 0 11:29 pts/0 00:00:00 /bin/sh /usr/bin/mysqld_safe --datadir=/var/lib/mysql --socket=/var/lib/mysql/mysql.sock --pid-file=/var/run/mysqld/mysqld.pid --basedir=/usr --user=mysql mysql 43385 43188 1 11:29 pts/0 00:00:00 /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib64/mysql/plugin --user=mysql --log-error=/var/log/mysqld.log --pid-file=/var/run/mysqld/mysqld.pid --socket=/var/lib/mysql/mysql.sock root 43430 39626 0 11:29 pts/0 00:00:00 grep --color=auto mysqld
root@CyBill-MysqlDev:/var/lib/mysql># service mysqld stop mysqld ¸¦ d¶ : [ OK ]
데이터 디렉터리를 var/lib/mysql --> /data로 변경 하기 위함.
root@CyBill-MysqlDev:/root># cp -r /var/lib/mysql/* /data/. mv로 해도 되지만 나중에 또 사용할 일이 있을지 모르니 남겨둠 root@CyBill-MysqlDev:/root># chown -R mysql:mysql /data
/etc/my.cnf 파일의 내용을 변경 함.
정상 기동하는 지 확인
|
4. Root 접속 권한 설정 및 일반 유저 생성
root의 외부 접속 가능 여부 설정 및 일반 유저 설정
패스워드를 변경하기 전에 패스워드 정책에 따라서 패스워드 생성 시에 제약이 따른다.
validate_password_policy
LOW : 8자리 이상이면 가능
MEDIUM : 숫자,소문자,대문자,특수문자 를 모두 포함해야 함.
root 원격 접속 유저 생성 mysql> create user 'root'@'%' identified by 'root1122' ; mysql> grant all privileges on *.* to 'root'@'%' identified by 'root1122' with grant option ;
일반 유저 생성 mysql> create user 'cybill'@'%' identified by 'cybill1@' ; mysql> grant all privileges on cybill.* to 'cybill'@'%' identified by 'cybill1@' with grant option ; |