前言:
当前小伙伴们对“mysql二进制包”大体比较注意,小伙伴们都想要了解一些“mysql二进制包”的相关内容。那么小编也在网络上搜集了一些有关“mysql二进制包””的相关知识,希望姐妹们能喜欢,我们一起来了解一下吧!安装前的准备:
mysql安装方式:二进制包
mysql下载地址:
mysql版本:GA-mysql-5.7.21
校验二进制包的MD5
md5sum mysql-5.7.21-linux-glibc2.12-x86_64.tar.gz 结果要与官方校验
更改系统最大打开文件数
ulimit -a 查看
ulimit -SHn 65535
echo "* - nofile 65535" >> /etc/security/limits.conf
groupadd mysql
useradd -g mysql -s /sbin/nologin -d /usr/local/mysql -MN mysql
安装包解压目录 /opt/mysql
cd /opt/mysql
tar xvf ~/mysql-5.7.21-linux-glibc2.12-x86_64.tar.gz
chown -R mysql:mysql mysql-5.7.21-linux-glibc2.12-x86_64
创建软链接
cd /usr/local/
ln -s /opt/mysql/mysql-5.7.21-linux-glibc2.12-x86_64/ mysql
chown -R mysql:mysql mysql
检查安装依赖
ldd /usr/local/mysql/bin/mysqld
创建初始化目录
mkdir /data/mysql/mysql3306/{data,logs,tmp,conf} -p
cd /data
chown -R mysql:mysql mysql
vim /etc/my.cnf (此处注意文件名字和目录不能随意,原因在下面)
(配置文件内容太多,如果需要发私信吧)
#my.cnf
[client]
port = 3306
socket = /tmp/mysql3306.sock
[mysql]
prompt="\\u@\\h :\\d\\r:\\m:\\s>"
[mysqld]
#misc
user = mysql #
basedir = /usr/local/mysql #基础目录,要与准备阶段的相匹配
datadir = /data/mysql/mysql3306/data # 数据目录
port = 3306
socket = /tmp/mysql3306.sock
event_scheduler = 0
tmpdir = /data/mysql/mysql3306/tmp #临时目录
。。。。。
数据初始化
/usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf --initialize
可以不指定--defaults-file=/etc/my.cnf的,但是最好指定,使用命令echo $? 验证初始化结果
或者 cat /data/mysql/mysql3306/data/error.log
记住数据库初始密码:GseHNX0lfI,M
启动数据库
/usr/local/mysql/bin/mysqld
验证启动进程
使用客户端登录数据库
/usr/local/mysql/bin/mysql -p
更改初始密码 (unknown)@localhost :(none)07:38:50>set password=password('880000');
以上可以看出在没有指定配置文件下的情况下,我们成功的启动了服务端和客户端,因为
不管是客户端还是服务端都会默认(按顺序)读取
/etc/my.cnf
/usr/local/mysql/etc/my.cnf
~/.my.cnf
从官方的配置文件中我们也可以得知,官方把客户端和服务端的配置文件都写入到同一个文件了,使用标签[client],[mysql],[mysqld]来区分
这样的配置对于单实例很方便,如果要再开一个实例,无论是服务端还是客户端就要手动指定配置文件了。
开启另外一个实例
创建实例目录
mkdir /data/mysql/mysql3307/{data,logs,tmp,conf} -p
cp /etc/my.cnf /data/mysql/mysql3307/conf/my3307.cnf
改变相关路径和端口
sed -i 's/3306/3307/g' /data/mysql/mysql3307/conf/my3307.cnf
初始化 (一定要指定配置文件)
/usr/local/mysql/bin/mysqld --defaults-file=/data/mysql/mysql3307/conf/my3307.cnf --initialize
启动数据库 (一定要指定配置文件)
/usr/local/mysql/bin/mysqld --defaults-file=/data/mysql/mysql3307/conf/my3307.cnf
--defaults-file一定要写在其他参数前面
启动客户端(一定要指定配置文件)
/usr/local/mysql/bin/mysql --defaults-file=/data/mysql/mysql3307/conf/my3307.cnf -p
现在我们已经成功启动了另外一个实例
ps aux|grep mysqld
下面做一些运维方面的优化
vim /etc/profile.d/mysql.sh
alias mysqld3306='/usr/local/mysql/bin/mysqld &'
alias mysqld3307='/usr/local/mysql/bin/mysqld --defaults-file=/data/mysql/mysql3307/conf/my3307.cnf &'
alias mysql3306='/usr/local/mysql/bin/mysql'
alias mysql3307='/usr/local/mysql/bin/mysql --defaults-file=/data/mysql/mysql3307/conf/my3307.cnf'
重载profile
[root@rqbao4 profile.d]# . /etc/profile
标签: #mysql二进制包