mysql 5.7.22 安装_MySQL 5.7.22 多实例安装(二进制免编译安装模式)

1.数据库 mysql 5.7.17 下载 (623.7MB)

https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.22-linux-glibc2.12-x86_64.tar.gz

>> linux generic

>> Linux - Generic (glibc 2.5) (x86, 64-bit), Compressed TAR Archive(Archive代表免编译安装)

2.基本配置:

~~~

shell> groupadd mysql

shell> useradd -r -g mysql -s /bin/false mysql

shell> ll /root/mysql-5.7.15-linux-glibc2.5-x86_64.tar.gz

shell> cd /root

shell> tar -zxvf mysql-5.7.15-linux-glibc2.5-x86_64.tar.gz

shell> mv /root/mysql-5.7.15-linux-glibc2.5-x86_64 /usr/local/mysql

shell> cd /usr/local/mysql

shell> mkdir -p /var/run/mysqld

shell> mkdir -p /home/mysql/data3306 /home/mysql/binlog3306

shell> mkdir -p /home/mysql/data3307 /home/mysql/binlog3307

shell> chmod 750 /var/run/mysqld /home/mysql/data* /home/mysql/binlog*

shell> chown -R mysql:mysql /home/mysql/ /var/run/mysqld

~~~

```

3.配置参数文件

shell> vi /etc/my.cnf

[mysqld_multi]

mysqld = /usr/local/mysql/bin/mysqld_safe

mysqladmin = /usr/local/mysql/bin/mysqladmin

#user = root

#password = rootpwd

[mysqld3306]

port = 3306

server_id = 3306

basedir =/usr/local/mysql

datadir =/home/mysql/data3306

log-bin=/home/mysql/binlog3306/mysql-bin

socket =/tmp/mysql3306.sock

log-error =/var/log/mysqld3306.log

pid-file =/var/run/mysqld/mysqld3306.pid

[mysqld3307]

port = 3307

server_id = 3307

basedir =/usr/local/mysql

datadir =/home/mysql/data3307

log-bin=/home/mysql/binlog3307/mysql-bin

socket =/tmp/mysql3307.sock

log-error =/var/log/mysqld3307.log

pid-file =/var/run/mysqld/mysqld3307.pid

~~~

4.添加环境变量

~~~

shell> echo "PATH=$PATH:/usr/local/mysql/bin " >> /etc/profile

shell> source /etc/profile

~~~

5.安装,完成后记住root密码

~~~

shell> /bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql/ --datadir=/home/mysql/data3306 --explicit_defaults_for_timestamp

shell> bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql/ --datadir=/home/mysql/data3307 --explicit_defaults_for_timestamp

~~~

6.查看密码

[root@localhost mysql]# bin/mysqld --initialize --user=mysql --datadir=/home/mysql/data3306 --explicit_defaults_for_timstamp

2018-06-14T08:53:58.531057Z 0 [Warning] InnoDB: New log files created, LSN=45790

2018-06-14T08:53:58.602686Z 0 [Warning] InnoDB: Creating foreign key constraint system tables.

2018-06-14T08:53:58.665198Z 0 [Warning] No existing UUID has been found, so we assume that this is the first time that this erver has been started. Generating a new UUID: 7a01969a-6fb0-11e8-937f-000c292641c5.

2018-06-14T08:53:58.666785Z 0 [Warning] Gtid table is not ready to be used. Table 'mysql.gtid_executed' cannot be opened.

2018-06-14T08:53:58.668179Z 1 [Note] A temporary password is generated for root@localhost: =PkN#o>Bk5*2

密码为‘’=PkN#o>Bk5*2‘’

7.启动实例服务

~~~

shell> mysqld_multi report

shell> mysqld_multi start 3306,3307

shell> netstat -ntlp | grep mysql

shell> ll /tmp/mysql*.sock

~~~

8.访问管理

~~~

# 访问数据库(进入后要求更改root密码)

shell> mysql -u root -p -S /tmp/mysql3306.sock

Enter password:

shell> mysql -u root -p -S /tmp/mysql3307.sock

Enter password:

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'dongshang2018';

mysql> select Host,User from mysql.user;

mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'dongshang2018' WITH GRANT OPTION;

mysql>FLUSH PRIVILEGES;

# 超级管理员

mysql> create user root@'192.168.1.%' IDENTIFIED by 'rootpwd';

mysql> grant all privileges on *.* to root@'192.168.1.%';

mysql> flush privileges;

# 可用端口登录了(此时登录账户为: root@'192.168.1.%')

shell> mysql -h 192.168.1.110 -u root -p -P3306

shell> mysql -h 192.168.1.110 -u root -p -P3306

~~~

9.关闭某个实例

~~~

shell> mysqladmin -uroot -pdongshang2018 -S /tmp/mysql3306.sock shutdown

shell> mysqladmin -uroot -pdongshang2018 -S /tmp/mysql3307.sock shutdown

~~~

10.添加自启动

~~~

shell> cat /etc/rc.local

mkdir /usr/local/mysql/init

touch /usr/local/mysql/init/mysqld_pid.sh

vim /usr/local/mysql/init/mysqld_pid.sh

mkdir -p /var/run/mysqld

chmod 750 /var/run/mysqld

chown -R mysql:mysql /var/run/mysqld

mysqld_multi start 3306,3307

shell> echo "/usr/local/mysql/bin/mysqld_multi --defaults-extra-file=/etc/my.cnf start 3306,3307" >> /etc/rc.local

~~~

11.修改php.ini

(1)mysql_connect()“No such file or directory”错误

pdo_mysql.default_socket=/tmp/

pdo_mysqli.default_socket=/tmp/

(2)SQLSTATE[HY000] [2002] Connection refused错误解决

修改tp5 database.php文件

localhost 改为 127.0.0.1

12.linux重启后,mysql无法启动。原因是 /var/run/mysqld 目录是保存在内存里的,重启后会消失

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值