MySQL 설치 구성
MySQL은 가장 널리 사용되는 관계형 데이터베이스 관리 시스템으로 스웨덴 MySQL AB 회사에서 개발했으며 현재 Oracle에 속해 있습니다.
MySQL에서 사용하는 SQL 언어는 데이터베이스 액세스에 가장 일반적으로 사용되는 표준화된 언어입니다.
MySQL은 일반적으로 작은 크기, 빠른 속도, 낮은 총 소유 비용, 특히 오픈 소스 특성으로 인해 중소 규모 웹 사이트 개발을 위한 웹 사이트 데이터베이스로 선택됩니다.
MySQL 설치
이 튜토리얼의 시스템 플랫폼: CentOS 릴리스 6.6(최종) 64비트.
1. 컴파일 도구 및 라이브러리 파일 설치
yum -y install gcc gcc-c++ make autoconf libtool-ltdl-devel gd-devel freetype-devel libxml2-devel libjpeg-devel libpng-devel openssl-devel curl-devel bison patch unzip libmcrypt-devel libmhash-devel ncurses-devel sudo bzip2 flex libaio-devel
2. cmake 컴파일러
cmake 버전: cmake-3.1.1을 설치합니다.
1. 다운로드 주소: http://www.cmake.org/files/v3.1/cmake-3.1.1.tar.gz
[root@w3cschool,cc src]# wget http://www.cmake.org/files/v3.1/cmake-3.1.1.tar.gz
2. 설치 패키지 압축을 푼다
[root@w3cschool,cc src]# tar zxvf cmake-3.1.1.tar.gz
3. 패키지 디렉터리
[root@w3cschool,cc src]# cd cmake-3.1.1
4.
[root@w3cschool,cc cmake-3.1.1]# ./bootstrap [root@w3cschool,cc cmake-3.1.1]# make && make install
3을 컴파일하고 설치합니다. MySQL
MySQL 버전: mysql-5.6.15을 설치합니다.
1. 다운로드 주소: http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.15.tar.gz
[root@w3cschool,cc src]# wget http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.15.tar.gz
2. 설치 패키지 압축을 푼다
[root@w3cschool,cc src]# tar zxvf mysql-5.6.15.tar.gz
3. 설치 패키지 디렉터리
[root@w3cschool,cc src]# cd mysql-5.6.15
4.
[root@w3cschool,cc mysql-5.6.15]# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/webserver/mysql/ -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DWITH_INNODB_MEMCACHED=1 -DWITH_DEBUG=OFF -DWITH_ZLIB=bundled -DENABLED_LOCAL_INFILE=1 -DENABLED_PROFILING=ON -DMYSQL_MAINTAINER_MODE=OFF -DMYSQL_DATADIR=/usr/local/webserver/mysql/data -DMYSQL_TCP_PORT=3306 [root@w3cschool,cc mysql-5.6.15]# make && make install
5를 컴파일하고 설치합니다. mysql 버전을 확인합니다.
[root@w3cschool,cc mysql-5.6.15]# /usr/local/webserver/mysql/bin/mysql --version
이 시점에서 mysql 설치가 완료됩니다.
MySQL 구성
1. mysql을 실행하는 데 사용할 사용자 mysql을 만듭니다.
[root@bogon conf]# /usr/sbin/groupadd mysql [root@bogon conf]# /usr/sbin/useradd -g mysql mysql
2. binlog 및 라이브러리의 저장 경로를 만들고 mysql 사용자 권한을 부여합니다.
[root@w3cschool,cc mysql]# mkdir -p /usr/local/webserver/mysql/binlog /www/data_mysql [root@w3cschool,cc mysql]# chown mysql.mysql /usr/local/webserver/mysql/binlog/ /www/data_mysql/
2. /etc /my.cnf를 다음 내용으로 바꿉니다.
[root@w3cschool,cc mysql]# cat /etc/my.cnf [client] port = 3306 socket = /tmp/mysql.sock [mysqld] replicate-ignore-db = mysql replicate-ignore-db = test replicate-ignore-db = information_schema user = mysql port = 3306 socket = /tmp/mysql.sock basedir = /usr/local/webserver/mysql datadir = /www/data_mysql log-error = /usr/local/webserver/mysql/mysql_error.log pid-file = /usr/local/webserver/mysql/mysql.pid open_files_limit = 65535 back_log = 600 max_connections = 5000 max_connect_errors = 1000 table_open_cache = 1024 external-locking = FALSE max_allowed_packet = 32M sort_buffer_size = 1M join_buffer_size = 1M thread_cache_size = 600 #thread_concurrency = 8 query_cache_size = 128M query_cache_limit = 2M query_cache_min_res_unit = 2k default-storage-engine = MyISAM default-tmp-storage-engine=MYISAM thread_stack = 192K transaction_isolation = READ-COMMITTED tmp_table_size = 128M max_heap_table_size = 128M log-slave-updates log-bin = /usr/local/webserver/mysql/binlog/binlog binlog-do-db=oa_fb binlog-ignore-db=mysql binlog_cache_size = 4M binlog_format = MIXED max_binlog_cache_size = 8M max_binlog_size = 1G relay-log-index = /usr/local/webserver/mysql/relaylog/relaylog relay-log-info-file = /usr/local/webserver/mysql/relaylog/relaylog relay-log = /usr/local/webserver/mysql/relaylog/relaylog expire_logs_days = 10 key_buffer_size = 256M read_buffer_size = 1M read_rnd_buffer_size = 16M bulk_insert_buffer_size = 64M myisam_sort_buffer_size = 128M myisam_max_sort_file_size = 10G myisam_repair_threads = 1 myisam_recover interactive_timeout = 120 wait_timeout = 120 skip-name-resolve #master-connect-retry = 10 slave-skip-errors = 1032,1062,126,1114,1146,1048,1396 #master-host = 192.168.1.2 #master-user = username #master-password = password #master-port = 3306 server-id = 1 loose-innodb-trx=0 loose-innodb-locks=0 loose-innodb-lock-waits=0 loose-innodb-cmp=0 loose-innodb-cmp-per-index=0 loose-innodb-cmp-per-index-reset=0 loose-innodb-cmp-reset=0 loose-innodb-cmpmem=0 loose-innodb-cmpmem-reset=0 loose-innodb-buffer-page=0 loose-innodb-buffer-page-lru=0 loose-innodb-buffer-pool-stats=0 loose-innodb-metrics=0 loose-innodb-ft-default-stopword=0 loose-innodb-ft-inserted=0 loose-innodb-ft-deleted=0 loose-innodb-ft-being-deleted=0 loose-innodb-ft-config=0 loose-innodb-ft-index-cache=0 loose-innodb-ft-index-table=0 loose-innodb-sys-tables=0 loose-innodb-sys-tablestats=0 loose-innodb-sys-indexes=0 loose-innodb-sys-columns=0 loose-innodb-sys-fields=0 loose-innodb-sys-foreign=0 loose-innodb-sys-foreign-cols=0 slow_query_log_file=/usr/local/webserver/mysql/mysql_slow.log long_query_time = 1 [mysqldump] quick max_allowed_packet = 32M
3. 데이터베이스를 초기화합니다.
[root@w3cschool,cc mysql]#/usr/local/webserver/mysql/scripts/mysql_install_db --defaults-file=/etc/my.cnf --user=mysql
4. 시작 스크립트를 만듭니다.
Installing MySQL system tables...2015-01-26 20:18:51 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details). OK Filling help tables...2015-01-26 20:18:57 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details). OK ...
4. . MySQL에 연결
[root@w3cschool,cc mysql]# cd /usr/local/webserver/mysql/ [root@w3cschool,cc mysql]# cp support-files/mysql.server /etc/rc.d/init.d/mysqld [root@w3cschool,cc mysql]# chkconfig --add mysqld [root@w3cschool,cc mysql]# chkconfig --level 35 mysqld on
MySQL 사용자 비밀번호를 변경
[root@w3cschool,cc mysql]# service mysqld start하거나 mysql 명령줄을 입력하세요
[root@w3cschool,cc mysql]# /usr/local/webserver/mysql/bin/mysql -u root -p
새 사용자를 생성하고 다음 권한을 부여하세요:
mysqladmin -u用户名 -p旧密码 password 新密码기타 명령시작: service mysqld start 중지: service mysqld stop
- 다시 시작: service mysqld restart
- Reload 구성: service mysqld reload