MySQL二进制安装

MySQL二进制安装
进入MySQL官网:https://www.mysql.com/
1选择DOWNLOADS
在这里插入图片描述2进入DOWNLOADS 页面后,点击最下面的社区链接,如果有钱可以直接选择Enterprise付费版本下载
在这里插入图片描述
3右下角找到下载档案
在这里插入图片描述
4选择第一个社区服务
在这里插入图片描述5选择下载版本和应用的系统,应用系统本文这里选择的是Linux通用版本
在这里插入图片描述6选择64位下载(32位已淘汰)
在这里插入图片描述7准备用户(确保在二进制安装之前,你的电脑上没有其他数据库,否则冲突)

groupadd -r -g 306 mysql 
useradd -r -g 306 -u 306 -d /data/mysql mysql 

(可以先执行getent passwd mysql Ss -ntl
这两个命令查看 )
注意:这里是故意制定了一个ID,也可以不指定ID,将来如果主机越来越多,可以统一规划,哪个账号用哪个ID,这样我们不至于造成问题的存在
getent passwd mysql 这个数据库有mysql的账户,账户路径是/var/lib/mysql,而/var/lib/mysql是默认数据库的存放路径,数据库文件就在这,生产中很多人喜欢把数据库放在一个专门的分区中,一般很多人喜欢放在:/data/mysql,数据和程序单独存放,这样万一哪天系统重装了,程序没了,数据还在
所以第二条命令中的/data/mysql 意思是将来会把数据放在这个目录下,但是由于前面加了-r ,r是指不创建夹目录(不会自动生成),r是系统账号,默认不会自动创建夹目录; 如果想要让它强制生成夹目录也行,useradd有一个选项可以强制生成夹目录:-m

8准备数据目录,建议使用逻辑卷(这一步可选)
#可选做,后面的脚本mysql_install_db可自动生成此目录

mkdir /data/mysql 
chown mysql:mysql /data/mysql

备注:建议做一下,因为我们把数据库放到逻辑卷里面会更好一点,如果我们认为的把文件夹准备好,而且给他关联一个逻辑卷(逻辑卷可以在线扩容)

9准备二进制程序(可以自定义安装包,一下为范例)

tar xf mariadb-VERSION-linux-x86_64.tar.gz -C /usr/local 
cd /usr/local 
ln -sv mariadb-VERSION mysql 
chown -R root:root /usr/local/mysql/

备注:(也可以使用wget下载),我们通常会加压到 /usr/local,因为这个文件是编译完了的,体现在压缩包中的linux,只要写操作系统名称的,都是表示这个是编译完了的,是针对linux编译的,编译的时候制定的就是/usr下的mysql,因为他是带版本号的,所以我们要给版本号创建个软连接,取名叫:mysql,如果不改软连接或者文件夹名,将来运行过程中,会报各种错误,所以需要指定一下

10 准备配置文件

cd /usr/local/mysql 
cp -b support-files/my-large.cnf   /etc/my.cnf 
vim /etc/my.cnf

#mysql语句块中添加以下三个选项

[mysqld] 
datadir = /data/mysql 
innodb_file_per_table = on #在mariadb5.5以上版的是默认值,可不加
skip_name_resolve = on  #禁止主机名解析,建议使用

备注:进入到/usr/local/mysql ,这个目录里面有一个子目录:support-files,它里面有一些相关的配置文件,其中有一个文件叫my-large.cnf,它提供了好几个配置文件,适用于不同的场景,用large作为数据库的配置范例,相当于模板,拷贝它,有些地方还要改,它有些地方是系统带的,不一定符合我们现在的安装要求。
至于其他的可加可不加,最后两项是跟系统优化有关

11创建数据库文件

cd /usr/local/mysql/ 
./scripts/mysql_install_db --datadir=/data/mysql --user=mysql 

备注:运行这个脚本,它里面可以指定数据库生成的路径,以及这些数据库生成的文件的所有者是mysql,在二进制安装中要制定以谁的身份拥有这个目录里的文件

[root@centos8 mysql]#ls /data/mysql/ -l 
total 110604 
-rw-rw---- 1 mysql mysql 12582912 Jun  1 16:44 ibdata1 
-rw-rw---- 1 mysql mysql 50331648 Jun  1 16:44 ib_logfile0 
-rw-rw---- 1 mysql mysql 50331648 Jun  1 16:44 ib_logfile1 
drwx------ 2 mysql mysql     4096 Jun  1 16:44 mysql 
drwx------ 2 mysql mysql     4096 Jun  1 16:44 performance_schema 
drwx------ 2 mysql mysql     4096 Jun  1 16:44 test

12准备服务脚本,并启动服务

cp ./support-files/mysql.server /etc/rc.d/init.d/mysqld 
chkconfig --add mysqld 
service mysqld start

#如果有对应的service 文件可以执行下面

cp support-files/systemd/mariadb.service /usr/lib/systemd/system/ 
systemctl daemon-reload 
systemctl enable --now mariadb

备注:作为数据库,我们要开机启动,我们可以用mysqld这样的启动脚本来启动,这个脚本官方也提供好了,只需要复制目录里的mysql-server作为启动脚本就行,靠过来就能用,把它加到服务列表里面,如果官方提供了service文件,也可以把service拷贝到对应的目录下也行,像mariadb 10.2就提供了service
第一种启动脚本适合于Centos6早期的版本,Centos7也能用,但是从Centos7往后就建议采用service文件(但是不管怎么样,能起来就行,主要是为了启动)

13 PATH路径

echo ‘PATH=/user/local/mysql/bin:$PATH> /etc/profile.d/mysql.sh 
. /etc/profile.d/mysql.sh

备注:为了后期的管理方便,我们需要修改PATH变量,可以方便的使用它的一些客户端工具

14 安全初始化

/user/local/mysql/bin/mysql_secure_installation

备注:为了更安全,可以跑一边安全脚本,因为之前已经制定了PATH变量,这里的路径可以不写,直接运行,这样数据库就装完了

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值