Home PC Games Linux Windows Database Network Programming Server Mobile  
           
  Home \ Database \ Source code to compile and install MySQL 5.7.9     - Magical Virtualbox under Ubuntu (Linux)

- Ubuntu 14.04 installation and configuration environment variable JDK1.8.0_25 (Linux)

- C ++ casts New Standard Comments (Programming)

- CentOS 6.0 system security level (Linux)

- Python regular expressions: how to use regular expressions (Programming)

- Android Studio Personalization (Linux)

- MySQL Parameter Tuning Best Practices (Database)

- Three methods easy data encryption on Linux (Linux)

- Timeout control related to Python threads and a simple application (Programming)

- Management Linux Container with Docker in Ubuntu (Linux)

- How to update the Linux kernel to improve system performance (Linux)

- Ubuntu 14.04 compile and install Apache (Server)

- Using Linux strace command trace / debug a program commonly used options (Linux)

- Chromium Install Flash Official Guide (Linux)

- CentOS 6 Install Xen4.2 Virtualization Practice (Linux)

- CoreOS use register mirror to build private warehouse (Linux)

- To install the latest version of the EPEL on CentOS 5.x or 6.x (Linux)

- Linux Fundamentals of the text, data flow processing orders (Linux)

- 15 things to do after installing Ubuntu 15.04 Desktop (Linux)

- Linux System Getting Started tutorial: Ubuntu desktop using the command line to change the system proxy settings (Linux)

 
         
  Source code to compile and install MySQL 5.7.9
     
  Add Date : 2018-11-21      
         
         
         
  Install CentOS 6.3

Configure yum:
[Root @ linuxidc ~] # cd /etc/yum.repos.d/

[Root @ linuxidc yum.repos.d] # mkdir a

[Root @ linuxidc yum.repos.d] # ls
a CentOS-Base.repo CentOS-Debuginfo.repo CentOS-Media.repo CentOS-Vault.repo

[Root @ linuxidc yum.repos.d] # mv CentOS-Base.repo CentOS-Debuginfo.repo CentOS-Vault.repo a

[Root @ linuxidc yum.repos.d] # ls
a CentOS-Media.repo

[Root @ linuxidc yum.repos.d] # vi CentOS-Media.repo
# CentOS-Media.repo
#
# This repo is used to mount the default locations for a CDROM / DVD on
# CentOS-6. You can use this repo and yum to install items directly off the
# DVD ISO that we release.
#
# To use this repo, put in your DVD and use it with the other repos too:
# Yum --enablerepo = c6-media [command]
#
# Or for ONLY the media repo, do this:
#
# Yum --disablerepo = * --enablerepo = c6-media [command]


[C6-media]
name = CentOS- $ releasever - Media
baseurl = file: /// media / CentOS /
# File: /// media / cdrom /
# File: /// media / cdrecorder /
gpgcheck = 1
enabled = 1
gpgkey = file: /// etc / pki / rpm-gpg / RPM-GPG-KEY-CentOS-6


Installing its dependencies:
[Root @ linuxidc yum.repos.d] # yum install -y ncurses-devel glibc gcc gcc-c ++ libstdc ++ * libtool cmake lrzsz libaio-devel


Upload source package mysql-5.7.9.tar.gz and cmake-2.8.3.tar.gz:
[Root @ linuxidc yum.repos.d] # cd / export / servers /


[Root @ linuxidc servers] # ls
cmake-2.8.3.tar.gz mysql-5.7.9.tar.gz


[Root @ linuxidc servers] # tar -xvf cmake-2.8.3.tar.gz


[Root @ linuxidc servers] # tar -xvf mysql-5.7.9.tar.gz


[Root @ linuxidc servers] # ls
cmake-2.8.3 cmake-2.8.3.tar.gz mysql-5.7.9 mysql-5.7.9.tar.gz


[Root @ linuxidc servers] # cd cmake-2.8.3


[Root @ linuxidc cmake-2.8.3] # ls
bootstrap CMakeCPack.cmake CMakeLogo.gif Copyright.txt DartConfig.cmake Example Templates
ChangeLog.manual CMakeCPackOptions.cmake.in cmake_uninstall.cmake.in CTestConfig.cmake DartLocal.conf.in Modules Tests
ChangeLog.txt CMakeGraphVizOptions.cmake CompileFlags.cmake CTestCustom.cmake.in Docs Readme.txt Utilities
cmake.1 CMakeLists.txt configure CTestCustom.ctest.in doxygen.config Source


[Root @ linuxidc cmake-2.8.3] # ./configure


[Root @ linuxidc cmake-2.8.3] # make && make install


[Root @ linuxidc mysql] # groupadd mysql


[Root @ linuxidc mysql] # useradd -r -g mysql mysql


[Root @ linuxidc export] # chown -R mysql.mysql / export /


[Root @ linuxidc export] # mkdir -p data / mysql / data log tmp log dumps


Compile MySQL installation package error:
CMake Error at cmake / boost.cmake: 76 (MESSAGE):
  You can download it with -DDOWNLOAD_BOOST = 1 -DWITH_BOOST =


  This CMake script will look for boost in . If it is not there,
  it will download and unpack it (in that directory) for you.


  If you are inside a firewall, you may need to use an http proxy:


  export http_proxy = http: //example.com: 80


Call Stack (most recent call first):
  cmake / boost.cmake: 228 (COULD_NOT_FIND_BOOST)
  CMakeLists.txt: 435 (INCLUDE)




- Configuring incomplete, errors occurred!


Download and install: wget http://downloads.sourceforge.net/project/boost/boost/1.59.0/boost_1_59_0.tar.gz
[Root @ linuxidc export] # tar -xvf boost_1_59_0.tar.gz


[Root @ linuxidc boost_1_59_0] # ls
boost boostcpp.jam boost.png bootstrap.sh index.htm INSTALL libs more status
boost-build.jam boost.css bootstrap.bat doc index.html Jamroot LICENSE_1_0.txt rst.css tools


[Root @ linuxidc mysql-5.7.9] # pwd
/export/mysql-5.7.9


. [Root @ linuxidc mysql-5.7.9] # cmake -DCMAKE_INSTALL_PREFIX = / export / servers / mysql / -DMYSQL_DATADIR = / export / data / mysql / data -DSYSCONFDIR = / export / servers / mysql / etc -DWITH_INNOBASE_STORAGE_ENGINE = 1 - DWITH_PERFSCHEMA_STORAGE_ENGINE = 1 -DDEFAULT_CHARSET = utf8 -DDEFAULT_COLLATION = utf8_general_ci -DMYSQL_UNIX_ADDR = / export / data / mysql / tmp / mysql.sock -DENABLED_LOCAL_INFILE = ON -DENABLED_PROFILING = ON -DWITH_DEBUG = 0 -DENABLE_DTRACE = OFF -DMYSQL_TCP_PORT = 3306 -DDOWNLOAD_BOOST = 1 -DWITH_BOOST = / export / boost_1_59_0


-DCMAKE_INSTALL_PREFIX: MySQL installation directory specified procedures, default / usr / local / mysql
-DMYSQL_DATADIR: Data file directory
-DSYSCONFDIR: Initialization parameter file directory
-DWITH_INNOBASE_STORAGE_ENGINE: Specifies statically compiled into the MySQL storage engine
-DDEFAULT_CHARSET: Default character set
-DMYSQL_TCP_PORT: The default port


[Root @ linuxidc mysql-5.7.9] # make && make install


[Root @ linuxidc bin] # pwd
/ Export / servers / mysql / bin


Initialize the database:
[Root @ linuxidc bin] # ./mysqld --initialize-insecure --user = mysql --basedir = / export / servers / mysql --datadir = / export / data / mysql / data


Delete the default my.cnf file:
[Root @ linuxidc bin] # rm -rf /etc/my.cnf

[Root @ linuxidc bin] # ./mysqld_safe --defaults-file = / export / servers / mysql / etc / my.cnf &

New configuration file my.cnf contents:
[Root @ linuxidc etc] # cat my.cnf
[Client]
port = 3358
socket = /export/data/mysql/tmp/mysql.sock


[Mysqld]
port = 3358
socket = /export/data/mysql/tmp/mysql.sock
datadir = / export / data / mysql / data /




# --- GLOBAL --- #
character-set-server = utf8
lower_case_table_names = 1
log-output = FILE
log-error = /export/data/mysql/log/error.log


general_log = 0


general_log_file = /export/data/mysql/log/mysql.log
pid-file = /export/data/mysql/mysql.pid
slow-query-log
slow_query_log_file = /export/data/mysql/log/slow.log
tmpdir = / export / data / mysql / tmp
long_query_time = 1


# # --------------


#thread_concurrency = 16
thread_cache_size = 512
table_open_cache = 16384
table_definition_cache = 16384
sort_buffer_size = 2M
join_buffer_size = 2M
read_buffer_size = 4M
read_rnd_buffer_size = 4M
key_buffer_size = 8M
myisam_sort_buffer_size = 8M
tmp_table_size = 64M
max_heap_table_size = 64M
open_files_limit = 65535
query_cache_size = 0


#add z #################
innodb_undo_directory = / export / data / mysql / undo
innodb_undo_tablespaces = 4
explicit_defaults_for_timestamp = 1


# --- NETWORK --- #
back_log = 1024
max_allowed_packet = 16M
interactive_timeout = 28800
wait_timeout = 28800
skip-external-locking
max-connections = 1000
skip-name-resolve
#read_only = 1
# --- REPL --- #
server-id = 360360
log-bin = mysql-bin
binlog_format = mixed
expire_logs_days = 7
relay-log = relay-log




replicate-ignore-db = mysql.slave_master_info
replicate-ignore-db = mysql.slave_relay_log_info
replicate-ignore-db = mysql.slave_worker_info
replicate-ignore-db = test
replicate-ignore-db = information_schema
replicate-ignore-db = performance_schema




log_slave_updates
skip-slave-start
slave-parallel-workers = 4
sync_master_info = 1
sync_relay_log = 1
sync_relay_log_info = 1
relay_log_info_repository = TABLE
master_info_repository = TABLE
#rpl_semi_sync_master_enabled = 1
#rpl_semi_sync_slave_enabled = 1
#rpl_semi_sync_master_timeout = 1000


# --- INNODB --- #
default-storage-engine = INNODB
innodb_data_home_dir = / export / data / mysql / data
innodb_file_per_table
innodb_log_group_home_dir = / export / data / mysql / data
innodb_log_files_in_group = 3
innodb_log_file_size = 512M
innodb_log_buffer_size = 16M
innodb_flush_log_at_trx_commit = 1
innodb_lock_wait_timeout = 120
innodb_flush_method = O_DIRECT
innodb_max_dirty_pages_pct = 75


#change z #####
sync_binlog = 1
innodb_buffer_pool_size = 1G
innodb_data_file_path = ibdata1: 2G; ibdata2: 2G: autoextend
innodb_autoextend_increment = 500
innodb_thread_concurrency = 32
innodb_open_files = 65535
innodb_write_io_threads = 20
innodb_read_io_threads = 20
innodb_spin_wait_delay = 10
innodb_flush_neighbors = 1
innodb_use_native_aio = 1
innodb_io_capacity = 2000
innodb_io_capacity_max = 6000
relay_log_recovery = 1
#innodb_additional_mem_pool_size = 128M

#change h #####

# Innodb_numa_interleave = ON
innodb_lru_scan_depth = 512
innodb_checksum_algorithm = crc32
innodb_purge_threads = 4

[Mysqldump]
quick
max_allowed_packet = 16M

[Mysql]
# Auto-rehash
# Remove the next comment character if you are not familiar with SQL
# Safe-updates
default-character-set = utf8


[Myisamchk]
key_buffer_size = 128M
sort_buffer_size = 128M
read_buffer = 2M
write_buffer = 2M

[Mysqlhotcopy]
interactive-timeout

[Root @ linuxidc log] # ps -ef | grep mysql
root 26374 10192 0 16:53 pts / 1 00:00:00 / bin / sh ./mysqld_safe --defaults-file = / export / servers / mysql / etc / my.cnf
mysql 27460 26374 0 16:53 pts / 1 00:00:04 / export / servers / mysql / bin / mysqld --defaults-file = / export / servers / mysql / etc / my.cnf --basedir = / export / servers / mysql --datadir = / export / data / mysql / data / --plugin-dir = / export / servers / mysql / lib / plugin --user = mysql --log-error = / export / data / mysql / log / error.log --open-files-limit = 65535 --pid-file = / export / data / mysql / mysql.pid --socket = / export / data / mysql / tmp / mysql.sock --port = 3358

Through a new configuration file to re-initialize, no new default password :( generate a random password (~ / .mysql_secret)
[Root @ linuxidc bin] # ./mysql
Welcome to the MySQL monitor Commands end with;. Or g.
Your MySQL connection id is 4
Server version: 5.7.9-log Source distribution

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 |
| Sys |
+ -------------------- +
4 rows in set (0.00 sec)

Add a variable position, execute mysql command in any directory:
[Root @ linuxidc ~] # vi .bash_profile
PATH = $ PATH: $ HOME / bin: / export / servers / mysql / bin: / export / servers / mysql / bin

export PATH
export LANG = en_US.UTF-8

[Root @ linuxidc ~] # source .bash_profile

[Root @ linuxidc ~] # mysql
Welcome to the MySQL monitor Commands end with;. Or g.
Your MySQL connection id is 6
Server version: 5.7.9-log Source distribution

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>

Configuration start mysql command script by service:
[Root @ linuxidc support-files] # pwd
/export/mysql-5.7.9/support-files

[Root @ linuxidc support-files] # cp mysql.server /etc/init.d/mysqld

[Root @ linuxidc init.d] # chmod 755 mysqld

[Root @ linuxidc init.d] # service mysqld start
Starting MySQL .. SUCCESS!

[Root @ linuxidc init.d] # service mysqld stop
Shutting down MySQL .. SUCCESS!

Add mysqld server from startup items:
[Root @ linuxidc ~] # chkconfig --list mysqld
service mysqld supports chkconfig, but is not referenced in any runlevel (run 'chkconfig --add mysqld')

[Root @ linuxidc ~] # chkconfig --add mysqld

[Root @ linuxidc ~] # chkconfig --level 345 mysqld on
     
         
         
         
  More:      
 
- Hadoop configuration ssh automation of automation (Server)
- Swift used in the application to add a local push at the specified time (Programming)
- The next key to install Linux bash script PowerShell (Linux)
- Ubuntu Server (Ubuntu 14.04 LTS 64-bit) installation libgdiplus 2.10.9 error solution (Linux)
- Access.log Apache access log analysis and how to import it into MySQL (Server)
- Based Corosync + Pacemaker + DRBD + LNMP Web server to achieve high availability cluster (Server)
- Spring JDBC Comments (Programming)
- Shell command line operation (Linux)
- Common data structures and functions of Linux process scheduling (Programming)
- Basic Tutorial: Linux novice should know 26 commands (Linux)
- Use the vi text editor and copy and paste Linux tips (Linux)
- Linux atomic operations and synchronization mechanisms (Programming)
- Linux file system (inode and block) (Linux)
- Acting on JavaScript events (Programming)
- MySQL service failed to start thinking of settlement under CentOS7 (Database)
- After Oracle 11g dataguard failover rebuild the archive logs are not applied to be NO problem (Database)
- To create a problem by the statement date comparison of the difference between MySQL and Oracle (Database)
- Oracle set and remove columns unavailable (Database)
- Editor of the popular Linux Gvim (Linux)
- Differences Shell scripting languages and compiled languages (Programming)
     
           
     
  CopyRight 2002-2022 newfreesoft.com, All Rights Reserved.