CentOS6.5下コンパイルインストールmysql-5.6.27
9879 ワード
MySQL :
1、RPM ;(MySQL-5.6.27-1.linux_glibc2.5.i386.rpm-bundle.tar)
2、 ;(mysql-5.6.27-linux-glibc2.5-i686.tar.gz)
3、 。 (mysql-5.6.27.tar.gz)
, , MySQL 。 , , , , RPM , 。
MySQL 5.5 , CMake。 make gcc 。 , CMake, yum, yum install cmake 。 yum cmake , CMake。
## CMake
[root@db tmp]# ll cmake-2.8.8.tar.gz
-rw-r--r--. 1 root root 5691656 12 11 17:55 cmake-2.8.8.tar.gz
[root@db tmp]# tar zxf cmake-2.8.8.tar.gz
[root@db tmp]# cd cmake-2.8.8
[root@db cmake-2.8.8]# ./configure
---------------------------------------------
CMake 2.8.8, Copyright 2000-2011 Kitware, Inc.
---------------------------------------------
Error when bootstrapping CMake:
Cannot find appropriate C compiler on this system. ## gcc
Please specify one using environment variable CC.
See cmake_bootstrap.log for compilers attempted.
---------------------------------------------
Log of errors: /tmp/cmake-2.8.8/Bootstrap.cmk/cmake_bootstrap.log
---------------------------------------------
[root@db tmp]# rpm -qa | grep make ## make
make-3.81-20.el6.i686
[root@db tmp]# rpm -qa | grep gcc ## gcc
libgcc-4.4.7-4.el6.i686
[root@db tmp]# yum install gcc ##
[root@db tmp]# yum install gcc-c++
[root@db tmp]# rpm -qa | grep gcc
gcc-c++-4.1.2-46.el5.i386
gcc-4.1.2-46.el5.i386
libgcc-4.4.7-4.el6.i686
[root@db cmake-2.8.8]# ./configure
[root@db cmake-2.8.8]# gmake && make install
[root@db cmake-2.8.8]# cmake ## cmake
cmake version 2.8.8
Usage
cmake [options] <path-to-source>
cmake [options] <path-to-existing-build>
......
##
[root@db ~]# groupadd mysql
[root@db ~]# useradd -r -g mysql mysql
##
[root@db ~]# vi /etc/security/limits.conf
mysql soft nproc 2047
mysql hard nproc 16384
mysql soft nofile 1024
mysql hard nofile 65536
## mysql
[root@db tmp]# ll mysql-5.6.27.tar.gz
-rw-r--r-- 1 root root 33327156 Dec 11 06:43 mysql-5.6.27.tar.gz
[root@db tmp]# tar zxf mysql-5.6.27.tar.gz
[root@db tmp]# cd mysql-5.6.27
[root@db tmp]# ## cmake
cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ ##
-DDEFAULT_CHARSET=utf8 \ ##MySQL
-DDEFAULT_COLLATION=utf8_general_ci \ ##MySQL
-DEXTRA_CHARSETS=all \ ##
-DENABLED_LOCAL_INFILE=1 \ ## MySQL
-DWITH_INNOBASE_STORAGE_ENGINE=1 \ ## INNODB
-DWITH_MYISAM_STORAGE_ENGINE=1 \ ## MYISAM (MyISAM、MEMORY、MERGE、CSV )
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \ ## BLACKHOLE
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \ ## ARCHIVE
-DWITH_FEDERATED_STORAGE_ENGINE=1 \ ## FEDERATED
-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 \ ## EXAMPLE
-DWITH_PARTITION_STORAGE_ENGINE=1 \ ##
-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \ ## PERFORMANCE_SCHEMA
-DCOMPILATION_COMMENT='ZSH for mysqltest' \ ##
-DWITH_READLINE=1 \ ## ( )
-DMYSQL_TCP_PORT=3306 \ ##
-DMYSQL_USER=mysql \ ## mysql
-DMYSQL_DATADIR=/data/3306 \ ## MySQL ( :datadir=/data/3306)
-DSYSCONFDIR=/data/3306 \ ## MySQL my.cnf ( :--defaults-file=/data/3306/my.cnf)
-DMYSQL_UNIX_ADDR=/data/3306/mysql.sock ## ( :socket=/data/3306/mysql.sock)
##cmake , :
-- Configuring done
-- Generating done
-- Build files have been written to: /tmp/mysql-5.6.27
## , , rm , CMakeCache.txt , cmake , mysql , 。
[root@db mysql-5.6.27]# make && make install ## , mysql 。
[root@db mysql-5.6.27]# chown -R mysql:mysql /usr/local/mysql ## /usr/local/mysql , MySQL 。
[root@db mysql-5.6.27]# vi /etc/profile
export PATH=/usr/local/mysql/bin:$PATH
##
[root@db ~]# mkdir -p /data/3306
[root@db ~]# chown -R mysql:mysql /data
## Mysql
[root@db mysql]# cd /usr/local/mysql
[root@db mysql]# ./scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/data/3306
## Mysql
[root@db mysql]# cd /usr/local/mysql
[root@db mysql]# cp support-files/my-default.cnf /data/3306/my.cnf
[root@db 3306]# cd /data/3306/
[root@db 3306]# vi my.cnf
[client]
port = 3306
socket = /data/3306/mysql.sock
default-character-set = utf8
[mysqld]
port = 3306
user = mysql
socket = /data/3306/mysql.sock
pid-file = /data/3306/mysql.pid
basedir = /usr/local/mysql
datadir = /data/3306
log-bin = /data/3306/mysql-bin
lower_case_table_names=1
max_connections=1000
character_set_server=utf8
character_set_client=utf8
[mysql]
default-character-set=utf8
## mysql
[root@db 3306]# cd /usr/local/mysql
[root@db mysql]# cp support-files/mysql.server /etc/rc.d/init.d/mysqld
## Mysql
[root@db mysql]# service mysqld start
Starting MySQL.............................................[ OK ]
[root@db mysql]# service mysqld status
MySQL running (28579) [ OK ]
[root@db mysql]# netstat -tulnp | grep mysql
tcp 0 0 :::3306 :::* LISTEN 28579/mysqld
## Mysql
[root@db 3306]# mysql -uroot -p ##
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.6.27-log ZSH for mysqltest ## “ZSH for mysqltest” ?
Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| test |
+--------------------+
4 rows in set (0.00 sec)
mysql> use test
Database changed
mysql> create table t1 (id int ,name varchar(10));
Query OK, 0 rows affected (4.90 sec)
mysql> insert into t1 values(1,'a'),(2,'b'),(3,'c');
Query OK, 3 rows affected (1.29 sec)
Records: 3 Duplicates: 0 Warnings: 0
mysql> select * from t1;
+------+------+
| id | name |
+------+------+
| 1 | a |
| 2 | b |
| 3 | c |
+------+------+
3 rows in set (0.00 sec)
## , ( )
mysql> select user,host,password from mysql.user;
+------+-----------+----------+
| user | host | password |
+------+-----------+----------+
| root | localhost | |
| root | db | |
| root | 127.0.0.1 | |
| root | ::1 | |
| | localhost | |
| | db | |
+------+-----------+----------+
6 rows in set (0.00 sec)
mysql> update mysql.user set password = PASSWORD('123') where user = 'root';
Query OK, 4 rows affected (0.01 sec)
Rows matched: 4 Changed: 4 Warnings: 0
mysql> select user,host,password from mysql.user;
+------+-----------+-------------------------------------------+
| user | host | password |
+------+-----------+-------------------------------------------+
| root | localhost | *23AE809DDACAF96AF0FD78ED04B6A265E05AA257 |
| root | db | *23AE809DDACAF96AF0FD78ED04B6A265E05AA257 |
| root | 127.0.0.1 | *23AE809DDACAF96AF0FD78ED04B6A265E05AA257 |
| root | ::1 | *23AE809DDACAF96AF0FD78ED04B6A265E05AA257 |
| | localhost | |
| | db | |
+------+-----------+-------------------------------------------+
6 rows in set (0.00 sec)
mysql> drop user ''@localhost;
Query OK, 0 rows affected (0.00 sec)
mysql> drop user ''@db;
Query OK, 0 rows affected (0.01 sec)
mysql> select user,host,password from mysql.user;
+------+-----------+-------------------------------------------+
| user | host | password |
+------+-----------+-------------------------------------------+
| root | localhost | *23AE809DDACAF96AF0FD78ED04B6A265E05AA257 |
| root | db | *23AE809DDACAF96AF0FD78ED04B6A265E05AA257 |
| root | 127.0.0.1 | *23AE809DDACAF96AF0FD78ED04B6A265E05AA257 |
| root | ::1 | *23AE809DDACAF96AF0FD78ED04B6A265E05AA257 |
+------+-----------+-------------------------------------------+
4 rows in set (0.01 sec)
mysql> update mysql.user set host='%' where user='root' and host='localhost';
Query OK, 1 row affected (0.01 sec)
Rows matched: 1 Changed: 1 Warnings: 0
mysql> select user,host,password from mysql.user;
+------+-----------+-------------------------------------------+
| user | host | password |
+------+-----------+-------------------------------------------+
| root | % | *23AE809DDACAF96AF0FD78ED04B6A265E05AA257 |
| root | db | *23AE809DDACAF96AF0FD78ED04B6A265E05AA257 |
| root | 127.0.0.1 | *23AE809DDACAF96AF0FD78ED04B6A265E05AA257 |
| root | ::1 | *23AE809DDACAF96AF0FD78ED04B6A265E05AA257 |
+------+-----------+-------------------------------------------+
4 rows in set (0.00 sec)
mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)