二进制安装mysql 5.7、mariadb (附yum安装方式)
admin
2023-05-15 22:22:04
0

 前言:

        本文以mariadb为例进行讲解,安装mysql同理,并以通过测试。安装前查找系统已安装的相关包(rpm -qa|grep -e "mysql" -e "mariadb")并进行卸载。

1、准备mariadb存储数据库文件的目录。

mkdir -p /mydata/data
chown mysql:mysql data  #如本机没有mysql用户及组需新建系统用户、组
例:
#groupadd -r -g 306 mysql #如需指定组需先建立组再指定,例  -g 306
useradd -r -M -s /sbin/nologin mysql

数据库文件占用内存较大,为保证可扩展性建议放在逻辑卷上。以下为配置逻辑卷过程,不需要的话可跳过下面步骤,直接到第二步。

 ① 配置逻辑卷分区或新加硬盘

二进制安装mysql 5.7、mariadb (附yum安装方式)

 ② 创建逻辑卷lv

 二进制安装mysql 5.7、mariadb (附yum安装方式)

 ③ 使用xfs文件系统逻辑卷才能有扩展性,由于Centos 6 默认不支持xfs文件系统需借助软件xfsprogs

yum install xfsprogs -y   #安装xfsprogs
modprobe xfs          #加载xfs文件系统驱动
mkfs.xfs  /dev/myvg/mydata  #创建文件系统

 ④ 挂载xfs文件系统

vim /etc/fstab
:r!blkid /dev/myvg/mydata 
UUID=1a5a90a2-2559-494f-954a-7177911e3535 /mydata     xfs       defaults   0  0  
mount -a

2、配置并安装mariadb

① 去官网下载mariadb二进制安装包https://downloads.mariadb.org/ Centos 6 系统建议安装5版本稳定版就好,不要去安装10以上版本。本文以安装mariadb-5.5.57-linux-x86_64.tar.gz为例。

tar xvf mariadb-5.5.57-linux-x86_64.tar.gz -C /usr/local  #解压到/usr/local
cd /usr/local
ln -sv mariadb-5.5.57-linux-x86_64/ mysql   #创建软连接
chown -R root:mysql mysql/                  #递归修改文件属主属组

② 准备配置文件

配置格式:类ini格式,各程序由单个配置文件提供配[prog_name]
配置文件查找次序:后面覆盖前面的配置文件
/etc/my.cnf --> /etc/mysql/my.cnf --> --default-extrafile=/PATH/TO/CONF_FILE --> ~/.my.cnf

mkdir /etc/mysql
cp /usr/local/mysql/support-files/my-large.cnf /etc/mysql/my.cnf #复制模板配置文件到/etc/mysql并改名为my.cnf
vim /etc/mysql/my.cnf
找到[mysqld]下新增如下配置
datadir = /mydata/data
innodb_file_per_table = on #使用innodb引擎,每个表单独一个数据库
skip_name_resolve = on     #禁止主机名解析,加快速度
lower_case_table_names = 1     #忽略表单大小写
character-set-server=utf8mb4   #设定默认字符为utf8mb4
可选配置示例:
basedir = /usr/local/mysql
#socket = /tmp/mysql.sock #如自定义socket位置需要在[client]段同时配置,port也要配置。否则可能出错
pid-file = /data/mysqldata/mysql.pid
[mysqld_safe] #需手动创建logs/error.log并改为mysql属主
log-error = /mydata/data/error.log

③ 创建数据库文件

cd /usr/local/mysql  #不同版本位置不同,有的在bin目录下
scripts/mysql_install_db --user=mysql --datadir=/mydata/data #注意不要进入scripts目录执行,该方法即将被废弃新方法如下
 mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/home/mysql
在初始化时如果加上 –initial-insecure,则会创建空密码的 root@localhost 账号,否则会创建带密码的 root@localhost 账号

④ 准备服务脚本并启动服务

cp support-files/mysql.server /etc/init.d/mysqld  #复制服务脚本并改名mysqld
chkconfig --add mysqld
chkconfig mysqld on   #设为开机启动

加入可执行路径

vim /etc/profile.d/mysql.sh
export PATH=/usr/local/mysql/bin:$PATH 
. /etc/profile.d/mysql.sh

⑥ 安全初始化

/user/local/mysql/bin/mysql_secure_installation  #配置root密码,删除匿名用户等操作

⑦ 准备日志文件并启动服务

touch /var/log/mysqld.log
touch  /mydata/data/error.log
chown mysql /var/log/mysqld.log 
chown  mysql  /mydata/data/error.log
service mysqld start

安装完成!

如遇到错误ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp

编辑my.cnf

[client]
socket = /tmp/mysql.sock #设置与mysqld段中设置的相同
或者
ln -s  /var/lib/mysql/mysql.sock /tmp/mysql.sock




yum安装方式:

        此种方式可安装各版本mysql,在此页面https://dev.mysql.com/downloads/repo/yum/下载对应系统repo文件安装包

例:

centos7 https://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.rpm

centos6 https://dev.mysql.com/get/mysql80-community-release-el6-1.noarch.rpm

下载安装后,到/etc/yum.repos.d/下编辑mysql-community.repo .默认启用的是最新版,编辑把最新版的enabled=0,把想安装的版本改为1即可。之后yum install mysql-server 即可完成安装,如需多次安装可把对应mysql-server包下载下来,然后安装,例yum localinstall mysql-community-server-5.7.23-1.el7.x86_64.rpm


相关内容

热门资讯

百万粉丝博主摆拍盲道被撞,账号... 据“首都网警”:为净化网络环境,北京警方聚焦人民群众反映强烈的网络乱象,持续加大打击整治力度,积极营...
金价、银价大跌,油价显著上涨 受美元走强、美国国债收益率上升影响,国际黄金、白银价格15日大跌,其中,金价跌至逾一周低点。当天上午...
黄仁勋、库克发声 美国总统特朗普对中国的国事访问已经结束。此行随他一同访华的还有十余位美国企业家,来自科技、金融、航空...
原创 都... 我同事跟台式机说再见了。 长期出差,只玩手游,SSD内存又嗷嗷贵。一万五的预算捂了大半年,最终还是决...
OpenAI内部怒轰苹果合作:... 财联社5月15日讯(编辑 赵昊)知名苹果爆料人马克·古尔曼发文表示,苹果与OpenAI这段仅维持两年...
Claude Code太好用了... 快科技5月15日消息,据报道,微软正在内部大规模取消Claude Code的使用许可,数千名开发者被...
神舟二十三号船箭组合体正转运至... 根据任务安排,神舟二十三号载人飞船将于近期择机发射。今天,在酒泉卫星发射中心,神舟二十三号船箭组合体...
网传“三大运营商即将免月租”,... 最近,大家在各大社交平台都可能刷到过这样一条消息——三大运营商即将全面推出免月租、按量计费套餐。有不...
今年20岁的老剧,多少年轻人还... “20年快得很,弹指一挥间。”20年来,相关讨论和衍生创作不断,甚至还有一批批新生代观众陆续“搬进”...
总书记引领强国之路|聚天下英才... 原标题:学习新语·总书记引领强国之路|聚天下英才而用之