MySQL 5.5.56 version (binary package installation) custom installation path step record

MySQL 5.5.56 version (binary package installation) custom installation path step record

Installation path: /application/mysql-5.5.56

1. Preliminary preparation

mysql dependency

libaio
yum install -y libaio

Create a user mysql and execute mysql as this user

useradd -s /bin/false -M mysql

Download the mysql binary package and unzip it

cd /tools
wget https://dev.mysql.com/get/Downloads/MySQL-5.5/mysql-5.5.56-linux-glibc2.5-x86_64.tar.gz
tar -zxf mysql-5.5.56-linux-glibc2.5-x86_64.tar.gz -C /application/

Switch to the /application directory, shorten the mysql folder name, and make a soft link to the mysql directory

cd /application/
mv mysql-5.5.56-linux-glibc2.5-x86_64/mysql-5.5.56
ln -s mysql-5.5.56/mysql

Recursively set the group and user of the mysql directory

chown -R mysql:mysql mysql-5.5.56/

2. Operations in the mysql directory

cd mysql

Initialize the database

A data directory will be generated in the mysql directory to store the database directory

./scripts/mysql_install_db --basedir=/application/mysql --datadir=/application/mysql/data/ --user=mysql

Change the user and group

chown -R root .
chown -R mysql data

Except for the data directory under the mysql directory, the owner of all other files is changed to root.

Copy the configuration file

cp support-files/my-medium.cnf /etc/my.cnf

Copy the mysql configuration file to my.cnf in the /etc/ directory

Modify the configuration file

sed -i 28i'log-error=/application/mysql/data/mysqld.error' /etc/my.cnf

Inserted a line in the configuration file to configure error logging

/etc/my.cnf Content:
# Example MySQL config file for medium systems.
#
# This is for a system with little memory (32M - 64M) where MySQL plays
# an important part, or systems up to 128M where MySQL is used together with
# other programs (such as a web server)
#
# MySQL programs look for option files in a set of
# locations which depend on the deployment platform.
# You can copy this option file to one of those
# locations. For information about these locations, see:
# http://dev.mysql.com/doc/mysql/en/option-files.html
#
# In this file, you can use all long options that a program supports.
# If you want to know which options a program supports, run the program
# with the "--help" option.
# The following options will be passed to all MySQL clients
[client]
#password = your_password
port = 3306
socket = /tmp/mysql.sock
# Here follows entries for some specific programs
# The MySQL server
[mysqld]
port = 3306
log-error=/application/mysql/data/mysqld.error
socket = /tmp/mysql.sock
skip-external-locking
key_buffer_size = 16M
max_allowed_packet = 1M
table_open_cache = 64
sort_buffer_size = 512K
net_buffer_length = 8K
read_buffer_size = 256K
read_rnd_buffer_size = 512K
myisam_sort_buffer_size = 8M
# Don't listen on a TCP/IP port at all. This can be a security enhancement,
# if all processes that need to connect to mysqld run on the same host.
# All interaction with mysqld must be made via Unix sockets or named pipes.
# Note that using this option without enabling named pipes on Windows
# (via the "enable-named-pipe" option) will render mysqld useless!
#
#skip-networking
# Replication Master Server (default)
# binary logging is required for replication
log-bin=mysql-bin
# binary logging format - mixed recommended
binlog_format=mixed
# required unique id between 1 and 2^32 - 1
# defaults to 1 if master-host is not set
# but will not function as a master if omitted
server-id = 1
# Replication Slave (comment out master section to use this)
#
# To configure this host as a replication slave, you can choose between
# two methods :
#
# 1) Use the CHANGE MASTER TO command (fully described in our manual) -
# the syntax is:
#
# CHANGE MASTER TO MASTER_HOST=, MASTER_PORT=,
# MASTER_USER=, MASTER_PASSWORD= ;
#
# where you replace , , by quoted strings and
# by the master's port number (3306 by default).
#
# Example:
#
# CHANGE MASTER TO MASTER_HOST='125.564.12.1', MASTER_PORT=3306,
# MASTER_USER='joe', MASTER_PASSWORD='secret';
#
# OR
#
# 2) Set the variables below. However, in case you choose this method, then
# start replication for the first time (even unsuccessfully, for example
# if you mistyped the password in master-password and the slave fails to
# connect), the slave will create a master.info file, and any later
# change in this file to the variables' values ​​below will be ignored and
# overridden by the content of the master.info file, unless you shutdown
# the slave server, delete master.info and restart the slaver server.
# For that reason, you may want to leave the lines below untouched
# (commented) and instead use CHANGE MASTER TO (see above)
#
# required unique id between 2 and 2^32 - 1
# (and different from the master)
# defaults to 2 if master-host is set
# but will not function as a slave if omitted
#server-id = 2
#
# The replication master for this slave - required
#master-host =
#
# The username the slave will use for authentication when connecting
# to the master - required
#master-user =
#
# The password the slave will authenticate with when connecting to
# the master - required
#master-password =
#
# The port the master is listening on.
# optional - defaults to 3306
#master-port =
#
# binary logging - not required for slaves, but recommended
#log-bin=mysql-bin
# Uncomment the following if you are using InnoDB tables
#innodb_data_home_dir = /usr/local/mysql/data
#innodb_data_file_path = ibdata1:10M:autoextend
#innodb_log_group_home_dir = /usr/local/mysql/data
# You can set .._buffer_pool_size up to 50 - 80 %
# of RAM but beware of setting memory usage too high
#innodb_buffer_pool_size = 16M
#innodb_additional_mem_pool_size = 2M
# Set .._log_file_size to 25 % of buffer pool size
#innodb_log_file_size = 5M
#innodb_log_buffer_size = 8M
#innodb_flush_log_at_trx_commit = 1
#innodb_lock_wait_timeout = 50
[mysqldump]
quick
max_allowed_packet = 16M
[mysql]
no-auto-rehash
# Remove the next comment character if you are not familiar with SQL
#safe-updates
[myisamchk]
key_buffer_size = 20M
sort_buffer_size = 20M
read_buffer = 2M
write_buffer = 2M
[mysqlhotcopy]
interactive-timeout

Copy Startup Program

cp support-files/mysql.server /etc/init.d/mysql

Copy the mysql startup program to the /etc/init.d/ directory to start the program

Edit the startup file and configure the startup directory

Method 1:

The idea is to assign values ​​to the variables provided by the configuration file. More troublesome.

sed -i ':a;N;$!ba;s/basedir=\ndatadir=/basedir=\/application\/mysql\ndatadir=\/application\/mysql\/data/g' /etc/init.d/mysql
sed -i ':a;N;$!ba;s/mysqld_pid_file_path=\n/mysqld_pid_file_path=\/application\/mysql\/data\/mysqld.pid\n/g' /etc/init.d/mysql

This is equivalent to replacing lines 45 and 46.

basedir=
datadir=
mysqld_pid_file_path=

Replace with

basedir=/application/mysql
datadir=/application/mysql/data
mysqld_pid_file_path=/application/mysql/data/mysql.pid

Method 2 (recommended):

The idea is to directly replace the default address of the script (/usr/local/mysql) with a custom path (/application/mysql) so that there is no need to assign values ​​to variables.

sed -i 's#/usr/local/mysql#/application/mysql#g' /etc/init.d/mysql

At this point, mysql installation is complete and can be started normally

3. Late ending

Command to create soft link

Create a soft link from the mysql command to the directory of the environment variable so that users can find the corresponding command in the variable

ln -s /application/mysql/bin/* /usr/local/sbin

Setting and changing passwords

Setting password for the first time:

mysqladmin -u '' password ''

example:

mysqladmin -u 'root' password 'PassWord'

To change password later:

mysqladmin -u'' -p'' password ''

example:

mysqladmin -u'root' -p'PassWord' password 'NewPassWord'

Login to mysql

$ mysql -u 'root' -p 'PassWord'
Welcome to the MySQL monitor. Commands end with ; or \g.
...
mysql> #Successfully logged into the mysql console $ mysql -uroot -pPassWord
Welcome to the MySQL monitor. Commands end with ; or \g.
...
mysql> #Successfully logged into the mysql console$ mysql -u'root' -p
Enter password: #Enter the user's password here Welcome to the MySQL monitor. Commands end with ; or \g.
...

mysql> #Successfully logged into the mysql console

$ mysql -uroot -p
Enter password: #Enter the user's password here Welcome to the MySQL monitor. Commands end with ; or \g.
...

mysql> #Successfully logged into the mysql console

Type quit or Ctrl+d to exit the mysql environment

mysql> quit
Bye
[root@www mysql]#
or
mysql> ^DBye
[root@www mysql]#

4. Common commands

Enter mysql

mysql -u 'root' -p 'PassWord'
mysql -uroot -pPassWord
mysql -u 'root' -p
mysql -uroot -p

Start mysql

service mysql start

Stop mysql

service mysql stop

Restart mysql

service mysql restart

The above is the record of the custom installation path steps of MySQL 5.5.56 version (binary package installation) introduced by the editor. I hope it will be helpful to everyone. If you have any questions, please leave me a message and the editor will reply to you in time. I would also like to thank everyone for their support of the 123WORDPRESS.COM website!

You may also be interested in:
  • Detailed tutorial on customizing the installation path of MySQL 5.7.18 version (binary package installation)
  • MySQL 5.7.18 binary package installation tutorial under Linux (without default configuration file my_default.cnf)
  • A brief discussion on some issues of installing MySQL using Linux binary packages
  • Ubuntu MySQL binary package installation tutorial

<<:  Detailed usage of React.Children

>>:  How to install nginx in docker and configure access via https

Recommend

Introduction to query commands for MySQL stored procedures

As shown below: select name from mysql.proc where...

A thorough analysis of HTML special characters

A Thorough Analysis of HTML (14) Special Characte...

How to use Vue's idea to encapsulate a Storage

Table of contents background Function Purpose Ide...

Overview of the definition of HTC components after IE5.0

Before the release of Microsoft IE 5.0, the bigges...

SSH port forwarding to achieve intranet penetration

The machines in our LAN can access the external n...

A Brief Analysis of MySQL Connections and Collections

Join query A join query refers to a matching quer...

Websocket+Vuex implements a real-time chat software

Table of contents Preface 1. The effect is as sho...

A brief discussion on the mysql execution process and sequence

Table of contents 1:mysql execution process 1.1: ...

Detailed explanation of jquery tag selector application example

This article example shares the specific code of ...

How to clean up the disk space occupied by Docker

Docker takes up a lot of space. Whenever we run c...

Installation and deployment of MySQL Router

Table of contents 01 Introduction to MySQL Router...

Shtml Concise Tutorial

Shtml and asp are similar. In files named shtml, s...

MySQL FAQ series: How to avoid a sudden increase in the size of the ibdata1 file

0. Introduction What is the ibdata1 file? ibdata1...

Implementation of Nginx+ModSecurity security module deployment

Table of contents 1. Download 2. Deployment 1.Ngi...