安装mysql与多实例安装

版权声明:博文为原创,引用请注明出处 https://blog.csdn.net/ANYELEISHOU/article/details/83035739

安装mysql(通用二进制格式)

第一步:准备mysql的配置文件(不再提供配置文件模版)

首先需要从网络下载一个my.cnf文件,放在/etc下
说明:
安装位置:/usr/local/mysql
数据位置: /data/mysql/mysql3306/data
临时文件位置:/data/mysql/mysql3306/tmp
日志文件位置:/data/mysql/mysql3306/logs/mysql-bin
socket文件位置:/tmp/mysql3306.sock

第二步:安装mysql

# groupadd mysql
# useradd -r -g mysql -s /sbin/nologin mysql
# tar xf /root/mysql-5.7.23-linux-glibc2.12-x86_64.tar.gz
# mv mysql-5.7.23-linux-glibc2.12-x86_64 /usr/local/
# cd /usr/local
# ln -sv mysql-5.7.23-linux-glibc2.12-x86_64/ mysql
# chown mysql.mysql mysql -R

第三步:创建相关目录

# mkdir /data/mysql/mysql3306/{data,tmp,logs} -pv
# chown -R mysql.mysql /data

第四步:初始化

(生成mysql的系统表和库)
# /usr/local/mysql/bin/mysqld --initialize --user=mysql
说明:
	1. --user是用于指定以哪个用户的身份完成初始化工作(默认从配置文件中读取)
	2. 数据目录下如果有文件,会导致初始化失败

初始化完成后,会在数据目录下生成一系列文件
# cd /data/mysql/mysql3306/data/
# ls
auto.cnf  error.log  ib_buffer_pool  ibdata1  ib_logfile0  ib_logfile1  ib_logfile2  mysql  performance_schema  slow.log  sys
说明:
	error.log中保存了安装、启动、运行mysql过程中所出现的错误信息出,初始root密码也在其中

获取root的初始密码
# cat /data/mysql/mysql3306/data/error.log | grep password

补充:
	用--initialize-inseucre来做初始化的时候,root的初始密码为空

第五步:启动mysql

# /usr/local/mysql/support-files/mysql.server start

第六步:导出二进制

第七步:登录mysql

# mysql -uroot -p密码

第八步:重置mysql的root密码

mysql> ALTER USER user() IDENTIFIED BY "123";     >>>修改密码

mysql> show databases;                            >>>显示表
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+

第九步:生成服务管理脚本

centos5、6

# cp /usr/local/mysql/support-files/mysql.server /etc/rc.d/init.d/mysqld
# chkconfig --add mysqld
# chkcongig mysqld on
# service msyqld start|stop....

centos7

# vim mysql3306.service
[Unit]
Description=mysql 3306 service

[Service]
Type=forking
ExecStart=/bin/bash /usr/local/mysql/support-files/mysql.server start
ExecStop=/bin/bash /usr/local/mysql/support-files/mysql.server stop
ExecRestart=/bin/bash /usr/local/mysql/support-files/mysql.server restart
[Install]
WantedBy=multi-user.target

# mv mysql3306.service /usr/lib/systemd/system/
# systemctl enable mysql3306.service 
# systemctl start mysql3306.service 
# ss -tnl | grep 3306 
# systemctl stop mysql3306.service 
# ss -tnl | grep 3306 

多实例

单个mysql服务会随着用户访问量增加导致性能急剧下降
提升服务器的资源使用率
降低单个mysql服务的并发请求量

第二个mysql实例,配置如下

端口:3307
安装位置:      /usr/local/mysql
数据位置:      /data/mysql/mysql3307/data
临时文件位置:  /data/mysql/mysql3307/tmp
日志文件位置:  /data/mysql/mysql3307/logs/mysql-bin
socket文件位置:/tmp/mysql3307.sock
配置文件:      /data/mysql/mysql3307/my.cnf

第一步:创建相关目录

# mkdir /data/mysql/mysql3307/{tmp,data,logs} -pv
# chown -R mysql.mysql /data

第二步:生成配置文件

# cp /etc/my.cnf /data/mysql/mysql3307/
# sed -i  's/3306/3307/g' /data/mysql/mysql3307/my.cnf 
# cat /data/mysql/mysql3307/my.cnf 

第三步:初始化

# /usr/local/mysql/bin/mysqld --defaults-file=/data/mysql/mysql3307/my.cnf --initialize

第四步:启动mysql

# /usr/local/mysql/bin/mysqld --defaults-file=/data/mysql/mysql3307/my.cnf &

第五步:登录多实例

# mysql -uroot -pc-7ae#sgan1K -S /tmp/mysql3307.sock(初始化后,密码就有改变需要重新获取初始密码)

第三个mysql实例,配置如下

端口:3308
安装位置:      /usr/local/mysql
数据位置:      /data/mysql/mysql3308/data
临时文件位置:  /data/mysql/mysql3308/tmp
日志文件位置:  /data/mysql/mysql3308/logs/mysql-bin
socket文件位置:/tmp/mysql3308.sock
配置文件:      /data/mysql/mysql3308/my.cnf

第一步:创建相关目录

# mkdir /data/mysql/mysql3308/{tmp,data,logs} -pv
# chown -R mysql.mysql /data

第二步:生成配置文件

# cp /etc/my.cnf /data/mysql/mysql3308/
# sed -i  's/3306/3308/g' /data/mysql/mysql3308/my.cnf 
# cat /data/mysql/mysql3308/my.cnf 

第三步:复制模版生成系统数据库文件

# cd /data/mysql/
# cp mysql3306/data/* mysql3308/data/ -a

第四步:启动实例

# /usr/local/mysql/bin/mysqld --defaults-file=/data/mysql/mysql3308/my.cnf &
# ss -tnl

第五步:登录实例

# mysql -uroot -pc-7ae#sgan1K -S /tmp/mysql3308.sock(使用模板的初始密码)

关闭mysql

mysqladmin -uUserName -pPassword -hIP -Pport -S /path/to/socket shutdown

猜你喜欢

转载自blog.csdn.net/ANYELEISHOU/article/details/83035739