mysql-5.6.34 Installation from Source code
Took me a while to suffer from the first successful souce code installation of mysql-5.6.34. Just put it here and share it with u.
Env.
OS:Red Hat Enterprise Linux Server release 5.5 (Tikanga)
Mysql: mysql-5.6.34
1. Install Cmake
[root@exadata1 cmake-3.7.1]# pwd
/root/mysql_install/cmake-3.7.1
[root@exadata1 cmake-3.7.1]# ./configure
.
.
.
— Build files have been written to: /root/mysql_install/cmake-3.7.1
———————————————
CMake has bootstrapped. Now run gmake.
gmake
make install
2. System configuration
2.1 add user/group
groupadd mysql
useradd -g mysql mysql
2.2 vi /etc/security/limits.conf
mysql soft nproc 2047
mysql hard nproc 16384
mysql soft nofile 1024
mysql hard nofile 65536
3. CMake config.
3.1 make sure if the package ncurses has been installed.
[root@exadata1 mysql_install]# rpm -qa ncurses
ncurses-5.5-24.20060715
ncurses-5.5-24.20060715
3.2 unzip the Mysql package.
[root@exadata1 mysql-5.7.17]# tar -zxvf mysql-5.7.17.tar.gz
[root@exadata1 mysql-5.7.17]# pwd
/root/mysql_install/mysql-5.7.17
3.3
cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DENABLED_LOCAL_INFILE=ON \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_FEDERATED_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \
-DCOMPILATION_COMMENT=’JSS for mysqltest’ \
-DWITH_READLINE=ON \
-DSYSCONFDIR=/data/mysqldata/3306 \
-DMYSQL_UNIX_ADDR=/data/mysqldata/3306/mysql.sock
make && make install
3.4 Trouble shooting and diagnosis.
1.
— Could NOT find Git (missing: GIT_EXECUTABLE)
Linux下git安装配置
http://blog.csdn.net/huaishu/article/details/40891229
tar -xzf git-2.1.3.tar.gz
cd git-2.1.3
./configure -prefix=/usr/local/git –with-curl –with-expat
make && make install
修改/etc/profile,在PATH中加入git路径,并执行source /etc/profile
GIT_HOME=/usr/local/git
PATH=$PATH:$GIT_HOME/bin:$GIT_HOME/libexec/git-core
export PATH GIT_HOME
[root@exadata1 git-2.1.3]# . /etc/profile
[root@exadata1 git-2.1.3]# git –version
git version 2.1.3
2. this can be ignored.
CMake Warning:
Manually-specified variables were not used by the project:
WITH_READLINE
— Build files have been written to: /root/mysql_install/mysql-5.6.34
4. tar a package that can be deployed to any other host with similar specifications and OS.
[root@exadata1 mysql-5.6.34]# tar zcvf mysql-5.6.34.tar.gz /usr/local/mysql/
should be around 230M.
[root@exadata1 mysql-5.6.34]# ls -lht
total 230M
-rw-r–r– 1 root root 229M Dec 23 08:51 mysql-5.6.34.tar.gz
5. create Mysql DB
5.1
[root@exadata1 mysql-5.6.34]# chown -R mysql.mysql /usr/local/mysql
5.2 make dir
[root@exadata1 ~]# mkdir -p /data/mysqldata/3306/
[root@exadata1 ~]# chown -R mysql.mysql /data
bash-3.2$ id
uid=101(mysql) gid=1006(mysql) groups=1006(mysql)
bash-3.2$ mkdir -p /data/mysqldata/3306/data
bash-3.2$ mkdir -p /data/mysqldata/3306/tmp
bash-3.2$ mkdir -p /data/mysqldata/3306/binlog/mysql-bin
mkdir -p /data/mysqldata/3306/share/english
5.3 Edit profile
vi ~/.bash_profile
export LANG=zh_CN.GB18030
PATH=$PATH:$HOME/bin:/usr/local/mysql/bin:/usr/local/mysql/lib
5.4 prepare .cnf
vi /data/mysqldata/3306/my.cnf
[client]
port = 3306
socket = /data/mysqldata/3306/mysql.sock
#The MySQL Server
[mysqld]
port = 3306
user = mysql
socket = /data/mysqldata/3306/mysql.sock
pid-file = /data/mysqldata/3306/mysql.pid
basedir = /usr/local/mysql
datadir = /data/mysqldata/3306/data
language = /data/mysqldata/3306/share/english
tmpdir = /data/mysqldata/3306/tmp
open_files_limit = 10240
explicit_defaults_for_timestamp
sql_mode = NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
#Buffer
max_allowed_packet = 256M
max_heap_table_size = 256M
net_buffer_length = 8k
sort_buffer_size = 2M
join_buffer_size = 4M
read_buffer_size = 2M
read_rnd_buffer_size = 16M
#Log
log-bin = /data/mysqldata/3306/binlog/mysql-bin
binlog_cache_size = 32M
max_binlog_cache_size = 512M
max_binlog_size = 512M
binlog_format = mixed
log_output = FILE
log-error = ../mysql-error.log
slow_query_log = 1
slow_query_log_file = ../slow_query.log
general_log = 0
general_log_file = ../general_query.log
expire-logs-days = 14
#InnoDB
innodb_data_file_path = ibdata1:2048M:autoextend
innodb_log_file_size = 256M
innodb_log_files_in_group = 3
innodb_buffer_pool_size = 1024M
[mysql]
no-auto-rehash
prompt = (\u@\h)[\d]>\_
default-character-set = gbk
5.4 init mysql DB as root
/usr/local/mysql/scripts/mysql_install_db –datadir=/data/mysqldata/3306/data –basedir=/usr/local/mysql –user=mysql
/usr/local/mysql/scripts/mysql_install_db –datadir=/data/mysqldata/3306/data –basedir=/usr/local/mysql
5.5 startup DB as root
mysqld_safe –defaults-file=/data/mysqldata/3306/my.cnf &
check status:
[root@exadata1 share]# lsof -i:3306
COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
mysqld 3779 mysql 14u IPv6 3365226829 TCP *:mysql (LISTEN)
[root@exadata1 share]# netstat -na |grep 3306
tcp 0 0 :::3306 :::* LISTEN
unix 2 [ ACC ] STREAM LISTENING 3365226830 /data/mysqldata/3306/mysql.sock
2016-12-23
15:39:14 0 [Warning] The syntax ‘–language/-l’ is deprecated and will
转发申明:
本文转自互联网,由小站整理并发布,在于分享相关技术和知识。版权归原作者所有,如有侵权,请联系本站 top8488@163.com,将在24小时内删除。谢谢