Home >Database >Mysql Tutorial >Detailed examples of multiple mysql5.7.19 (tar.gz) installation graphic tutorials under Linux

Detailed examples of multiple mysql5.7.19 (tar.gz) installation graphic tutorials under Linux

小云云
小云云Original
2018-05-28 17:33:565118browse

Please read the previous article for the beginner’s tutorial on installing MySQL-5.7.19 version under Linux for the first time. If you have already installed it, please read this article to install multiple mysql-5.7.19 under Linux. This article is mainly for everyone. This article introduces multiple mysql5.7.19tar.gz installation tutorials under Linux in detail, which has certain reference value. Interested friends can refer to it. I hope it can help everyone.

Environment: centos 6.5

1-Download


2-Skip login


3-1 To install multiple databases, you need to configure your own my.cnf. If you only install one, the system has not been installed and you can just use this command

shell> groupadd mysql
shell> useradd -r -g mysql -s /bin/false mysql
shell> cd /usr/local
shell> tar zxvf /path/to/mysql-VERSION-OS.tar.gz
shell> ln -s full-path-to-mysql-VERSION-OS mysql
shell> cd mysql
shell> mkdir mysql-files
查看下有没有data目录如果没有的话增加个命令(mkdir data)
shell> chmod 750 mysql-files
shell> chown -R mysql .
shell> chgrp -R mysql .
shell> bin/mysql_install_db --user=mysql # MySQL 5.7.5
shell> bin/mysqld --initialize --user=mysql # MySQL 5.7.6 and up
shell> bin/mysql_ssl_rsa_setup # MySQL 5.7.6 and up
shell> chown -R root .
shell> chown -R mysql data mysql-files
shell> bin/mysqld_safe --user=mysql &
# Next command is optional
shell> cp support-files/mysql.server /etc/init.d/mysql.server

After installation, you can jump directly to login step 5

The following is the situation of installing multiple mysql:

3-2 Installing multiple databases requires the following steps Command:

1-Add the configuration file my.cnf (command touch my.cnf in the mysql directory):

The following configuration files can be directly pasted and copied

Then create the log file /xcxyz/log/mysql/error.log

[mysqld]
basedir= /usr/local/mysql-5.7.19-3307
datadir = /usr/local/mysql-5.7.19-3307/data
port = 3307
character-set-server=utf8
server_id = 11
#该socket最好指定,不指定的话默认的话 是使用的默认的socket文件 而且登陆数据库的时候会有我下面的问题
socket = /tmp/mysql3307.sock 
log-error = /xcxyz/log/mysql/error.log
pid-file = /usr/local/mysql-5.7.19-3307/data/mysql-5.7.19-3307.pid

2-Execute the following command

2-1Add user group me All users and groups use mysqlosf.

shell> groupadd mysql
shell> useradd -r -g mysql -s /bin/false mysql
shell> cd /usr/local
shell> tar zxvf /path/to/mysql-VERSION-OS.tar.gz

2-2 Establish a soft connection:

shell> ln -s full-path-to-mysql-VERSION-OS mysql
shell> cd mysql
shell> mkdir mysql-files

Check whether there is a data directory. If not, add a command (mkdir data)

2-3 Authorize the current directory:

shell> chmod 750 mysql-files
shell> chown -R mysqlosf .
shell> chgrp -R mysqlosf .

2-4 Compile

bin/mysqld --defaults-file=/usr/local/full-path-to-mysql- VERSION-OS/my.cnf --initialize --user=mysqlosf

View log output: vi /xcxyz/log/mysql/error.log
2017-07-24T03:13: 47.933684Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2017-07-24T03:13:49.979892Z 0 [Warning] InnoDB: New log files created, LSN=45790
2017-07-24T03:13:50.262941Z 0 [Warning] InnoDB: Creating foreign key constraint system tables.
2017-07-24T03:13:50.330756Z 0 [Warning] No existing UUID has been found, so we assume that this is the first time that this server has been started. Generating a new UUID: 1d702294-701e-11e7-98a1-00163e30bbf6.
2017-07-24T03:13:50.340474Z 0 [Warning] Gtid table is not ready to be used. Table 'mysql.gtid_executed' cannot be opened.
2017-07-24T03:13:50.344419Z 1 [Note] A temporary password is generated for root@localhost: jZpgHhigx5>i (It is very important to initialize the password later)

2-5 Create the key

shell> bin/mysql_ssl_rsa_setup --defaults-file=/usr/local/mysql-5.7.19-3307/my.cnf

Detailed examples of multiple mysql5.7.19 (tar.gz) installation graphic tutorials under Linux

##2-6 Reauthorize the distribution

shell> chown -R root .
shell> chown -R mysql data mysql-files

2-7 Start background mysql

bin/mysqld_safe --defaults-file=/usr/local/full-path-to-mysql-VERSION-OS/my.cnf --user=mysqlosf &

Next command is optional

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

2-8 Check whether mysql starts ps - ef | grep mysql

4 Log in to mysql and change the password. Use the temporary password just now



I have another problem here haha, always Unable to log in

Access denied for user 'root'@'localhost' (using password:YES)The solution is at the bottom

If you log in, you can directly use the temporary password to log in and set up Password


5-After logging in to MySQL, you are required to change the password immediately, otherwise no operations can be performed. Execute the following command to change the password of

'root'@'localhost':

SET PASSWORD = PASSWORD('root');
 ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER; 
flush privileges;

6-In order to log in remotely, add a 'root'@'%' account:

grant all privileges on *.* to 'root'@'%' identified by 'root' with grant option;

7-Local test connection

Follow the above method, continue to unzip and install mysql-5.7.19-linux-glibc2.5-x86_64.tar.gz, and configure it to 3308, 3309 ports. Multiple mysqls are installed.

The solution is installed but cannot be logged in:

If it is like me above
The reason is that the English in the red box below is the second mysql and needs to specify the socket and port, the English meaning That is to say, if you do not specify the socket, the default one will be selected. Because we install multiple mysql, this must be specified

mysql --socket=/tmp/mysql3307.sock --port=3307 -uroot -p

If you accidentally lose the password here or the password expires Then you can reset the password in this way:


Detailed examples of multiple mysql5.7.19 (tar.gz) installation graphic tutorials under Linux

5-Reset password:


5-1Close Process

kill `cat /usr/local/mysql-5.7.19-3307/data/mysql-5.7.19-3307.pid`

5-2 Create file mysql-init



5-2-1文件内容

第一种内容:

ALTER USER 'root'@'localhost' IDENTIFIED BY 'mysqlosf';

Detailed examples of multiple mysql5.7.19 (tar.gz) installation graphic tutorials under Linux

保存内容之后启动

复制代码 代码如下:

bin/mysqld_safe --defaults-file=/usr/local/mysql-5.7.19-3307/my.cnf  --init-file=/usr/local/mysql-5.7.19-3307/mysql-init    --user=mysqlosf     &

如果上述内容不成功选择第二种内容

UPDATE mysql.user
 SET authentication_string = PASSWORD('MyNewPass'), password_expired = 'N'
 WHERE User = 'root' AND Host = 'localhost';
FLUSH PRIVILEGES;

Detailed examples of multiple mysql5.7.19 (tar.gz) installation graphic tutorials under Linux

保存内容之后启动

复制代码 代码如下:

bin/mysqld_safe --defaults-file=/usr/local/mysql-5.7.19-3307/my.cnf  --init-file=/usr/local/mysql-5.7.19-3307/mysql-init   --user=mysqlosf     &

Detailed examples of multiple mysql5.7.19 (tar.gz) installation graphic tutorials under Linux

精彩专题分享:mysql不同版本安装教程 mysql5.7各版本安装教程 mysql5.6各版本安装教程

相关推荐:

MySQL5.7.19在Linux下安装出现的问题解决图文详解

Mysql5.7.19在Linux下卸载的方法介绍

linux下实现两台服务器实时同步方法介绍

The above is the detailed content of Detailed examples of multiple mysql5.7.19 (tar.gz) installation graphic tutorials under Linux. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn