脚本实现二进制mariadb数据库的安装(代码片段)

author author     2022-12-01     592

关键词:

一、实验目的
mariadb属于关系型数据库,通过此实验掌握mariadb数据库的二进制安装

二、实验准备

mariadb-10.2.23-linux-x86_64.tar.gz安装包,虚拟机需要安装expect包

三、实验脚本

vim /data/mysql.sh
#!/bin/bash
#create group user  创建用于mysql服务的组和用户
groupadd -r -g 336 mysql #创建mysql组,系统组,gid336
useradd -r -g mysql -u 336 -s /sbin/nologin -d /data/mysql mysql  #创建用户mysql,系统用户,指定主组mysql,uid336,shell类型/sbin/nologin,家目录/data/mysql(需手动创建)
#tar and link  解压文件和创建软链接
tar xvf /data/mariadb-10.2.23-linux-x86_64.tar.gz -C /usr/local/  #解压文件至/usr/local/目录下
cd  /usr/local/
ln -s mariadb-10.2.23-linux-x86_64/ mysql  #创建软链接mysql指向mariadb-10.2.23-linux-x86_64
chown -R root.root /usr/local/mysql/  #递归修改mysql的属主和属组为root
#PATH 修改变量PATH,让安装包自带脚本可以执行
echo "PATH=/usr/local/mysql/bin:$PATH" >> /etc/profile #将自带脚本路径添加到变量,也可以在/etc/profile.d/下自己创建.sh后缀的文件存放
source /etc/profile  #使变量存放文件生效
#create LV 创建卷组,用来存储数据库,方便容量不够时扩展
mkdir /data/mysql  #创建数据库存放目录
pvcreate /dev/sdb  #创建物理卷
vgcreate vg0 /dev/sdb  #创建卷组
lv -n mysql -L 10G vg0  #创建名为mysql,大小10G的逻辑卷
mkfs.xfs /dev/vg0/mysql  #将逻辑卷文件系统制作为xfs
mount /dev/vg0/mysql /data/mysql  #挂载至/data/mysql目录下
#data准备数据库数据及目录
chown mysql.mysql /data/mysql/  #修改数据库属主属组
cd /usr/local/mysql 
./scripts/mysql_install_db --datadir=/data/mysql --user=mysql  #以指定目录和身份生成数据库
#service  准备mysql服务端的配置文件
mkdir  /etc/mysql
cp /usr/local/mysql/support-files/my-huge.cnf /etc/mysql/my.cnf  #拷贝模板文件
sed -i "/\[mysqld\]/adatadir=\/data\/mysql" /etc/mysql/my.cnf  #在[mysqld]后添加datadir=/data/mysql
#start script 准备服务启动脚本
cp /usr/local/mysql/support-files/mysql.server  /etc/init.d/mysqld 
chkconfig --add mysqld  #将服务加入开机启动
service mysqld start  #启动服务
#securety 安全加固
expect <<EOF
spawn mysql_secure_installation  #安全加固脚本,可以重新设置密码
expect "none" send "\n"
expect "none" send "\n"
expect "password" send "y\n"
expect "New" send "123456\n"
expect "Re-enter" send "123456\n"
expect "anonymous" send "y\n"
expect "login" send "y\n"
expect "database" send "y\n"
expect "privilege" send "y\n"
expect eof
EOF                    

测试连接

mysql -uroot -p"password "
    执行结果显示mysql命令未找到,原因是脚本在一个新的子bash进程里面执行,在这个子bash进程里面执行的PATH变量添加、刷新并不能继承至父进程,这才导致PATH变量文件虽然里面有新的路径加入,却还是显示命令未找到,解决方法是再次使文件生效,即source /etc/profile或.  /etc/profile

二进制安装mariadb(代码片段)

第一个实验:实现二进制安装mariadb用脚本或ansible的role实现我们先手动执行一遍,能够更好的了解其流程第一步:将我们下载的mariadb二进制包解压由于我们下载的是二进制的程序包,所以,源码编译的步骤已经有人替我们做了... 查看详情

zabbix-4.0编译安装(代码片段)

系统环境OS:centos7.5software:zabbix4.0LTSDBSever:MariaDB-10.2.15一、需要先把数据库装上,这里用到的是mariadb二进制包安装1、下载二进制包,官网的下载路径:wgethttp://mirrors.neusoft.edu.cn/mariadb//mariadb-10.2.15/bintar-linux-x86_64/mariadb-10.2. 查看详情

yum安装mariadb,二进制安装mariadb(代码片段)

yum安装Mariadb设置Mariadb的yum源vim/etc/yum.repos.d/mariadb.repo[mariadb]name=mariadbbaseurl=https://mirrors.tuna.tsinghua.edu.cn/mariadb/yum/10.2/centos7-amd64/gpgcheck=0使用清华yum源安装Mariadb,可以选择不同的版本,此处安装10. 查看详情

安装二进制mariadb(代码片段)

我们先从下面的官网下载所需的二进制文件https://downloads.mariadb.org/mariadb/10.2.3/#bits=64下载完成后,我们还可以对其进行md5校验,以确保包来传输过程中没有受到损坏,安装过程中不会出现一些奇奇怪怪的问题1准备用户和组groupadd-... 查看详情

二进制安装mysql(代码片段)

目的:通过二进制方法安装mariadb准备工作:操作系统:CentOS7安装所需软件包:mariadb-10.2.23-linux-x86_64.tar.gz可在官网进行下载,此处用的最新版本。注:mysql和mariadb除了名字一样,内部其实都一样。但是,mariaDB在各方面都是mysql... 查看详情

lamp,安装脚本(代码片段)

一键安装LAMP#/bin/bash#工具包yuminstall-ygccpcre-developenssl-develexpat-develautoconflibtoolgcc-c++apr-develapr-util-devellibxml2-develbzip2-devellibmrpty-devel#二进制安装MariaDBtarxvf/data/mariadb-10.2.23-linux 查看详情

mariadb数据库的备份与恢复(代码片段)

MariaDB数据库的备份与恢复前提条件:开启二进制日志:二进制日志可用于数据库恢复时使用,建议二进制日志与数据库数据分开存放。开启二进制日志的方法:[[email protected]~]#vim/etc/my.cnf[mysqld]log_bin=/data/binary-log/mariadb-bin注... 查看详情

centos7.6使用mariadb官方二进制安装(代码片段)

centos7.6使用Mariadb官方二进制安装,注意制定了解压路径为/usr/local下下载二进制安装包wgethttps://mirrors.tuna.tsinghua.edu.cn/mariadb//mariadb-10.2.23/bintar-linux-x86_64/mariadb-10.2.23-linux-x86_64.tar.gz创建mysql用户组和用户groupadd-r- 查看详情

linux系统下shell脚本实战之mariadb创建数据库和表(代码片段)

Linux系统下shell脚本实战之mariadb创建数据库和表一、脚本要求二、环境准备1.配置yum仓库2.安装mariadb3.设置服务自启4.进入数据库5.修改数据库root密码6.设置root远程登录7.测试远程登录三、编写shell脚本四、执行脚本五、检查运行结... 查看详情

mariadb二进制半自动安装脚本

Mariadb二进制半自动安装脚本 系统环境:centosx86_64 Mariadb版本:mariadb-5.5.36-linux-x86_64#!/bin/bash#auth:code7#description:auto-mariadb#version:1.0groupadd-r-g306mysqluseradd-r-g306-u306mysql#创建mysql的组和用户t 查看详情

mariadb安装(代码片段)

二进制安装MARIADB1、解压到/usr/local/[[email protected]~]#tarxvfmariadb-10.2.23-linux-x86_64.tar.gz-C/usr/local/2、软连接[[email protected]local]#ln-smariadb-10.2.23-linux-x86_64/mysql3、更改所有者,所属组[[email& 查看详情

剧本---ansible实现自动化安装mariadb(代码片段)

创建剧本构建思路,生成目录树[[email protected]ansible]#tree.├──ansible.cfg├──hostname.yml├──hosts├──mariadb.yml├──role_mariadb.retry├──role_mariadb_threng.yml├──role_mariadb.yml└──roles├──mariadb│??├──files│?? 查看详情

关于centos7如何二进制安装mysql,详细步骤!(代码片段)

第一步:首先在mariadb官网下载mariadb编译好的二进制压缩包https://downloads.mariadb.org/第二步:解压下载好的mariadb压缩包,由于下载好的是别人编译好的二进制压缩包,所以解压路径是有规定的必须在“/usr/local/”下,若是自己源码... 查看详情

linux之ansible安装多实例mariadb(代码片段)

Ansible安装多实例mariadb10.2.23堡垒机配置root家目录下放置mariadb二进制包[MonApr2919:52[email protected]~]#ls-rw-r--r--1rootroot456950538Apr2608:16mariadb-10.2.23-linux-x86_64.tar.gz在/data目录下创建ansible目录,内部创建roles文件夹[ 查看详情

实现lamp架构及统一日志管理(代码片段)

1、部署分离的LAMP,部署到二台服务器上,php加载xcache模块1)在c2服务器安装httpd,php,php-mysql[root@c2~]#yuminstallhttpdphpphp-mysql-y2)在mariadb服务器安装数据库mariadb-server[root@mariadb~]#yuminstallmariadb-server-y3)启动服务[root@c2~]#syste 查看详情

基于源码编译安装mariadb实现多实例(代码片段)

准备环境:CentOS7.6mariadb-10.2.23.tar.gz源码包多实例目录结构:编译安装安装开发工具yuminstallbisonbison-develzlib-devellibcurl-devellibarchive-develboost-develgccgcc-c++cmakencurses-develgnutls-devellibxml2-developenssl-devell 查看详情

mariadb指定10.2版本安装(代码片段)

...sp;一次升级过程,在此记录下。原因:新的项目需要新的数据库版本支持。升级主要步骤:备份原数据库 ---》卸载maria 查看详情

centos7.2安装mariadb数据库,并编写第一个链接数据库的php程序(代码片段)

一、首先在Vmware上新建虚拟机安装CentOS7.2,root用户登录:(我是mini安装,安装过程就略去了): 二、MariaDB的安装与简易配置:1、执行安装命令:yum-yinstallmariadbmariadb-server查询安装完成的MariaDB版本为15.1; 安装完成MariaD... 查看详情