Linux 高级管理,安装MySQL数据库

1.准备工作

(1)为了避免发生端口冲突,程序冲突等现象,建议先查询MySQL软件的安装情况,确认没有 使用以RPM方式安装的mysql-server、mysql软件包,否则建议将其卸载。

[root@node01 ~]# rpm -q mysql-server mysql

挂载 ,安装光盘自带的ncurses-devel包

[root@node01 ~]# mount /dev/cdrom /mnt/  //挂载
[root@node01 ~]# rpm -ivh /mnt/Packages/ncurses-devel-5.9-14.20130511.el7_4.x86_64.rpm 

创建mysql文件夹,切换到该目录,安装FTP 

[root@node01 ~]# mkdir mysql
[root@node01 ~]# cd mysql/
[root@node01 mysql]# rpm -ivh /mnt/Packages/ftp-0.17-67.el7.x86_64.rpm

连接ftp服务器 

[root@node01 mysql]# ftp 172.16.37.13
Connected to 172.16.37.13 (172.16.37.13).
220 Serv-U FTP Server v15.1 ready...
Name (172.16.37.13:root): 135 //输入账号
331 User name okay, need password.
Password:  //输入密码
230 User logged in, proceed.
Remote system type is UNIX.
Using binary mode to transfer files.

 切换至 软件下载/y2/y2c

ftp> cd 软件下载/y2/y2c

查看目录下的内容 

ftp> ls

获取 cmake-2.8.6.tar.gz 压缩包

ftp> get cmake-2.8.6.tar.gz

 获取 mysql-5.6.36.tar.gz 安装包

ftp> get mysql-5.6.36.tar.gz

(2)MySOL 5.X系列版本需要cmake编译安装,所以先安装cmake包。

[root@node01 mysql]# tar zxf cmake-2.8.6.tar.gz  //解压这个安装包到当前目录
[root@node01 mysql]# cd cmake-2.8.6/  //切换目录
[root@node01 cmake-2.8.6]# ./configure 

[root@node01 cmake-2.8.6]# gmake

 

[root@node01 cmake-2.8.6]# gmake install

2.源码编译及安装

1)创建运行用户

 为了加强数据库服务的权限控制,建议使用专门的运行用户,如mysql.此用户不需要直接登录 到系统,可以不创建宿主文件夹。

[root@node01 mysql]# groupadd mysql
[root@node01 mysql]# useradd -M -s /sbin/nologin mysql -g mysql

2)解包

将下载的mysql 源码包解压,释放到/usr/src目录下,并切换到展开后的源码目录。


[root@node01 mysql]# tar zxf mysql-5.6.36.tar.gz -C /usr/src/
[root@node01 mysql]# cd /usr/src/mysql-5.6.36/
[root@node01 mysql-5.6.36]# 

3)配置

在内容丰富,结构庞大的企业网站平台中,可能会用到多种字符集的网页,相应地数据库系统也应该支持不同的字符集编码,在配置过程中,可以将默认使用的字符集设置为utf-8,并添加其他字符集的支持。

[root@node01 mysql-5.6.36]# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DSYSCONFDIR=/etc -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all

4)编译并安装

[root@node01 mysql-5.6.36]# make
[root@node01 mysql-5.6.36]# make install

3.安装后的其他调整

1)对数据库目录进行权限设置

代码如下。

[root@node01 mysql-5.6.36]# chown -R mysql:mysql /usr/local/mysql/

2)建立配置文件

   CentOS 7系统下默认支持MariaDB数据库,因此系统默认的/etc/my.cnf配置文件中是MariaDB 的配置文件。而在MySQL源码目录中的support-files文件夹下,提供了MySOL数据库默认的样本配 置文件my-default.cnf 文件,在启动MySOL数据库服务之前,需要先将原有的my.cnf 文件替换为 MySOI提供的配置文件内容。

[root@node01 mysql-5.6.36]# rm -rf /etc/my.cnf
[root@node01 mysql-5.6.36]# cp support-files/my-default.cnf /etc/my.cnf

3)初始化数据库

  为了能够正常使用MySOL数据库系统,应以运行用户mysql的身份执行初始化脚本mysql_ install_db, 指定数据存放目录等。

[root@node01 mysql-5.6.36]# /usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data/

4)设置环境变量

为了方便在任何目录下使用mysql 命令,需要在/etc/profile设置环境变量。

[root@node01 mysql-5.6.36]# echo "PATH=$PATH:/usr/local/mysql/bin" >> /etc/profile
[root@node01 mysql-5.6.36]# . /etc/profile

4.添加系统服务

   若希望添加mysqld系统服务,以便通过systemctl进行管理,可以直接使用源码包中提供的服务 脚本.找到support-files文件夹下的mysql.server脚本文件,将其复制到/usr/local/mysql/bin/目录 下,并改名为 mysqld.sh,然后创建 mysql 系统服务的配置文件/usr/lib/systemd/system/ mysqld.service,将其添加为mysqld系统服务。

[root@node01 mysql-5.6.36]# cp support-files/mysql.server /usr/local/mysql/bin/mysqld.sh
[root@node01 mysql-5.6.36]# chmod +x /usr/local/mysql/bin/mysqld.sh
[root@node01 mysql-5.6.36]# vim /usr/lib/systemd/system/mysqld.service

输入以下内容 

[Unit]
Description=MySQL Server
After=network.target


[Service]
User=mysql  //指定程序运行的用户账号
Group=mysql  //指定程序运行的组账号

Type=forking
PIDFile=/usr/local/mysql/data/node01.pid  //指定PID文件位置,默认为“主机名.pic1”。node01为主机名
ExecStart=/usr/local/mysql/bin/mysqld.sh start
ExecStop=/usr/local/mysql/bin/mysqld.sh stop

[Install]
WantedBy=multi-user.target

     这样,以后就可以使用systemctl 工具来控制MySOL数据库服务了.例如,若要启动mysqld 服 务,并查看其运行状态,可以执行以下操作。

[root@node01 ~]# systemctl start mysqld
[root@node01 ~]# systemctl enable mysqld
[root@node01 ~]# systemctl status mysqld

[root@node01 ~]# netstat -anpt | grep mysql

     MySOL服务器默认通过TCP 3306端口提供服务。通过编辑/etc/my.cnf配置文件中[mysqld]配置 段的“port=3306”行,可以更改监听端口。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/240974.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

安全算法(一):安全技术、加密的基础知识、哈希函数的简单介绍

安全算法(一):安全技术、加密的基础知识、哈希函数的简单介绍 通过互联网交换数据时,数据要经过各种各样的网络和设备才能传到对方那里。数据在传输过程中有可能会经过某些恶意用户的设备,从而导致内容被盗取。 因此…

智慧储能数字孪生:能源未来的智慧引擎

随着社会对清洁能源的需求不断增加,智能储能技术成为能源转型的关键驱动力。在这一领域中,数字孪生技术的应用为智慧储能带来了全新的可能性。数字孪生是指数字化、实时、可视化的模拟系统,通过复制现实世界中的对象或过程,为智能…

nestjs守卫校验jwt

目标 部分接口需要用户登录后才可以访问,用户登录后可以颁发 jwt_token 给前端,前端在调用需要鉴权的接口,需要在请求头添加 jwt_token,后端校验通过才能继续访问,否则返回403无权访问 创建守卫 anth 安装依赖 npm…

数据库设计规范编制文档

本文的目的是提出针对Oracle数据库的设计规范,使利用Oracle数据库进行设计开发的系统严格遵守本规范的相关约定,建立统一规范、稳定、优化的数据模型。 参照以下原则进行数据库设计: 1) 方便业务功能实现、业务功能扩展; 2) 方便设…

OpenTiny Vue 组件库3.12.0 发布:文档大优化!增加水印和二维码两个新组件

非常高兴跟大家宣布,2023年11月30日,OpenTiny Vue 发布了 v3.12.0 🎉。 OpenTiny 每次大版本发布,都会给大家带来一些实用的新特性,10.24 我们发布了 v3.11.0 版本,增加了富文本、ColorPicker 等4个新组件…

Linux中的权限问题【详解】

shell命令以及运行原理 Windows以图形化界面为主要交互方式,简单高效,易于日常使用。Linux以命令行界面为主要交互方式,操作相较windows,mac来说比较困难一些,但linux也有向着图形化界面努力的桌面系统,例…

庙算兵棋推演平台配置

9月23开始,9月26完成。因为那时刚从大连回来,十一之后又一个紧急项目当项目负责人,所以隔了这么久才发出来。 我尝试进行制作平台AI,想在我的小平板上配好,最好还可以移植。于是我采用WSL(windows自带的do…

AWS-CDN只能备用域名访问-使用Lambda@Edge(禁止分配的域名访问)

场景:cdn使用备用域名后,希望用户只能从备用域名访问,而不是自动分配的cdn域名,这也将是一个安全漏洞,被扫描到cdn域名访问刷流量等! 【建议部署前查看】参考链接: 1.官方cdn返回示例 2.lambdae…

机器人纯阻抗控制接触刚性环境(阻尼影响因素)

问题描述 在机器人学中,阻抗控制是一种常用的控制策略,用于管理机器人在与环境交互时的运动和力。阻抗控制背后的关键概念是将环境视为导纳,而将机器人视为阻抗。 纯阻抗控制接触刚性环境时,机器人的行为方式主要受其阻抗参数的…

统信UOS使用4种方法重置用户密码

原文链接:统信UOS使用4种方法重置用户密码 hello,大家好啊,今天我要给大家介绍的是在统信UOS操作系统上使用4种不同方法来重置用户密码。我们都知道,在日常使用中,偶尔会忘记密码,尤其是在使用多个账户的情…

Leetcode—222.完全二叉树的节点个数【简单】

2023每日刷题(五十八) Leetcode—222.完全二叉树的节点个数 实现代码 /*** Definition for a binary tree node.* struct TreeNode {* int val;* TreeNode *left;* TreeNode *right;* TreeNode() : val(0), left(nullptr), right(null…

进程调度的题解

目录 原题大意: 题目描述: 输入格式: 输出格式: 样例输入: 样例输出: 数据规模: 题目大意: 主要思路: dp的转移: dp初始化: 代码&…

【人工智能】人工智能中的Agent:法律虚拟助手简单示例

人工智能中的Agent:法律虚拟助手简单示例 随着人工智能技术的发展,Agent(代理)的概念在这个领域中变得愈发重要。在人工智能的应用中,Agent可以是一个系统、软件或机器人,能够执行特定的任务,理…

静态HTTP应用在社交媒体推广中的作用

在社交媒体日益盛行的今天,静态HTTP应用以其独特的特点,成为了社交媒体推广的一大利器。下面,我们就来聊聊静态HTTP应用在社交媒体推广中的作用。 一、快速响应,提升用户体验 静态HTTP应用以其快速响应的特点,为用户…

二叉树(接口函数的实现)

今天继续来分享的是二叉树,我们废话不多说,直接来看下面的几个接口函数,然后我们把他们实现,我们就掌握二叉树的二分之一(今天粉丝破千了,属实有点高兴了)。 typedef char BTDataType;typedef s…

Epicypher—CUTANA™ ChIC/CUTRUN Kit

核酸酶靶向切割和释放 (CUT&RUN)技术是由Steven henikoff博士团队开发的一种染色质图谱分析方法,基于Ulrich Laemmli博士的染色质免疫切割技术 (ChIC),融合蛋白A与微球菌核酸酶 (pA-MNase),选择性原位切割与抗体结合的染色质。在CUT&…

漏洞补丁存在性检测技术洞察

1、 漏洞补丁存在性检测技术是什么? 漏洞补丁存在性检测技术通俗的理解就是检测目标对象中是否包含修复特定已知漏洞的补丁代码,目标检测对象可能是源码,也能是二进制文件。 2、 漏洞补丁存在性检测技术业务背景 补丁检测这个问题背景是产品…

uview1 的u-tabs组件在微信小程序中会出现横向滚动条

uview1 的u-tabs组件在微信小程序中会出现横向滚动条,真机才会生效,微信开发者工具没问题包括官方示例也会 原因:未屏蔽微信小程序的滚动条 解决办法:uview-ui中uview-ui/components/u-tabs/u-tabs.vue文件把h5屏蔽滚动条的条件编…

基于ssm的线上课程管理系统论文

摘 要 现代经济快节奏发展以及不断完善升级的信息化技术,让传统数据信息的管理升级为软件存储,归纳,集中处理数据信息的管理方式。本线上课程管理系统就是在这样的大环境下诞生,其可以帮助管理者在短时间内处理完毕庞大的数据信息…

mysql,树形结构表中,查询所有末节点数据(叶子结点)

需求:在一个可以存放多级目录的表中,查询出某个课程目录下所有末节点(因为只有末节点可以挂载资源) 例如下图: 其中 1.11.2.12.1 都是末节点,因为他们已经没有下一级了 catalog表中重要字段有:c…