Linux——MySQL编译安装、RPM安装、yum安装

文章目录

  • Linux——MySQL编译安装、RPM安装、yum安装
    • 一、编译安装
    • 二、RPM安装
    • 三、yum安装

Linux——MySQL编译安装、RPM安装、yum安装

卸载mysql

# 查看是否安装了mysql
[root@csq ~]# rpm -qa |grep mysql
mysql-community-server-5.7.36-1.el7.x86_64
mysql-community-common-5.7.36-1.el7.x86_64
mysql-community-client-5.7.36-1.el7.x86_64
mysql-community-libs-5.7.36-1.el7.x86_64
# 停止mysql服务器并删除mysql
[root@csq ~]# systemctl stop mysqld
# 卸载
[root@csq ~]# rpm -ev mysql-community-server-5.7.36-1.el7.x86_64
[root@csq ~]# rpm -ev mysql-community-common-5.7.36-1.el7.x86_64 --nodeps
[root@csq ~]# rpm -ev mysql-community-client-5.7.36-1.el7.x86_64
[root@csq ~]# rpm -ev mysql-community-libs-5.7.36-1.el7.x86_64 --nodeps
# 删除mysql目录文件和库
[root@csq ~]# find / -name mysql
[root@csq ~]# rm -rf /var/lib/mysql
[root@csq ~]# rm -rf /etc/my.cnf
# 删除mysql用户及组
[root@csq ~]# id mysql
uid=27(mysql) gid=27(mysql) groups=27(mysql)
[root@csq ~]# userdel mysql
[root@csq ~]# groupdel mysql
[root@csq ~]# cat /etc/passwd |grep mysql
[root@csq ~]# cat /etc/group |grep mysql    
# 再次查询
[root@csq ~]# whereis mysql

一、编译安装

安装依赖包

[root@csq ~]# yum -y install ncurses ncurses-devel openssl-devel bison gcc gcc-c++ make cmake wget

下载

wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-boost-5.7.27.tar.gz

创建mysql目录

mkdir /usr/local/mysql

创建mysql用户

useradd -r mysql -M -s /sbin/nologin
# -r:建立一个系统账号
# -M:强制,不要建立使用者家目录
# -s:指定登陆者的shell

解压并编译安装

# 解压
tar -zxvf mysql-boost-5.7.27.tar.gz -C /usr/local/
# 切换到编译目录
cd /usr/local/mysql-5.7.27/
# 编译安装
cmake . \
-DWITH_BOOST=boost/boost_1_59_0/ \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DSYSCONFDIR=/etc \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DINSTALL_MANDIR=/usr/share/man \
-DMYSQL_TCP_PORT=3306 \
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \
-DDEFAULT_CHARSET=utf8 \
-DEXTRA_CHARSETS=all \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_READLINE=1 \
-DWITH_SSL=system \
-DWITH_EMBEDDED_SERVER=1 \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1

make && make install

参数详解:
cmake . \
-DWITH_BOOST=boost/boost_1_59_0/ \          #  指定使用Boost库的路径和版本
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \   # 指定MySQL的安装目录为/usr/local/mysql
-DSYSCONFDIR=/etc \          #  指定MySQL的配置文件目录为/etc,即将生成的配置文件放在该目录下
-DMYSQL_DATADIR=/usr/local/mysql/data \ # 指定MySQL的数据目录为/usr/local/mysql/data,即将数据库文件存储到该路径
-DINSTALL_MANDIR=/usr/share/man \  # 指定MySQL的man手册安装路径为/usr/share/man,即将生成的man手册安装到该目录
-DMYSQL_TCP_PORT=3306 \     #  指定MySQL的TCP端口为3306,即在运行MySQL时使用该端口进行通信
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \ # 指定MySQL的Unix套接字路径为/tmp/mysql.sock,即MySQL通过Unix套接字进行本地通信
-DDEFAULT_CHARSET=utf8 \  #  指定MySQL的默认字符集为utf8,即在创建数据库和表时使用UTF-8字符集
-DEXTRA_CHARSETS=all \   # 设置MySQL支持所有额外字符集
-DDEFAULT_COLLATION=utf8_general_ci \ # 指定MySQL的默认排序规则为utf8_general_ci,即在比较和排序时使用UTF-8字符集的默认规则
-DWITH_READLINE=1 \     #  启用MySQL的Readline库支持,用于命令行交互的编辑和历史记录功能
-DWITH_SSL=system \     # 指定使用系统提供的SSL库,用于启用MySQL的SSL连接支持
-DWITH_EMBEDDED_SERVER=1 \ # 启用MySQL的嵌入式服务器功能,允许将MySQL嵌入到其他应用程序中
-DENABLED_LOCAL_INFILE=1 \ # 启用MySQL的本地数据导入功能,允许从客户端加载本地文件到数据库中
-DWITH_INNOBASE_STORAGE_ENGINE=1 # 启用InnoDB存储引擎,该引擎提供了事务支持和行级锁定

初始化

# 设置mysql根目录文件属主和属组
[root@csq ~]# chown -R mysql:mysql /usr/local/mysql/
# 进入mysql安装目录
[root@csq ~]# cd /usr/local/mysql/
# 更新PATH环境变量,使可以在任何目录下执行mysql命令行工具
[root@csq mysql]# echo "export PATH=${PATH}:/usr/local/mysql/bin/" >> /etc/profile
[root@csq mysql]# source /etc/profile
# 初始化
mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
# 执行结束会告诉你mysql登陆密码,要记下来 待会要改密码会用到
# --initialize: 这个参数告诉MySQL服务器执行初始化操作
# --user=mysql: 这个参数指定MySQL服务器以mysql用户身份运行
# --basedir=/usr/local/mysql: 这个参数指定MySQL服务器的基础目录,即MySQL的安装目录
# --datadir=/usr/local/mysql/data: 这个参数指定MySQL的数据目录,即数据库文件的存储位置

编辑mysql配置文件

vim /etc/my.cnf

[mysqld]
basedir=/usr/local/mysql
#指定安装目录
datadir=/usr/local/mysql/data
#指定数据存放目录

启动mysql

# 启动mysql
mysqld_safe --user=mysql &
[root@csq mysql]# netstat -tlnp |grep 3306
tcp6       0      0 :::3306                 :::*                    LISTEN      14878/mysqld   

登陆mysql并修改密码

[root@csq mysql]# /usr/local/mysql/bin/mysql -uroot -p'IWFXDuyi(1fg'
mysql> alter user 'root'@'localhost' identified by '000000';
mysql> exit
[root@csq mysql]# mysql -uroot -p000000 # 再次使用修改的密码登陆
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
4 rows in set (0.00 sec)
mysql> exit

配置mysqld服务的管理工具

[root@csq support-files]# cd /usr/local/mysql/support-files/
[root@csq support-files]# cp -rf mysql.server  /etc/init.d/mysqld 
# 将MySQL服务添加到系统的服务管理列表中
[root@csq support-files]# chkconfig --add mysqld
# 将MySQL服务设置为在系统启动时自动启动
[root@csq support-files]# chkconfig  mysqld on
# 启动命令
[root@csq support-files]# service mysqld stop
[root@csq support-files]# service mysqld start
[root@csq support-files]# service mysqld restart
[root@csq support-files]# service mysqld reload
[root@csq support-files]# service mysqld status
# 或者
[root@csq ~]# systemctl start mysqld
[root@csq ~]# systemctl stop mysqld

二、RPM安装

下载地址:https://downloads.mysql.com/archives/community/

# 下载 
[root@csq ~]# wget https://downloads.mysql.com/archives/get/p/23/file/mysql-5.7.36-1.el7.x86_64.rpm-bundle.tar
# 解压

按照顺序安装rpm软件包

[root@csq ~]# rpm -ivh mysql-community-common-5.7.36-1.el7.x86_64.rpm 
[root@csq ~]# rpm -ivh mysql-community-libs-5.7.36-1.el7.x86_64.rpm 
[root@csq ~]# rpm -ivh mysql-community-devel-5.7.36-1.el7.x86_64.rpm 
[root@csq ~]# rpm -ivh mysql-community-libs-compat-5.7.36-1.el7.x86_64.rpm 
[root@csq ~]# rpm -ivh mysql-community-client-5.7.36-1.el7.x86_64.rpm 
[root@csq ~]# yum install -y net-tools
[root@csq ~]# rpm -ivh mysql-community-server-5.7.36-1.el7.x86_64.rpm 
# 验证
[root@csq ~]# whereis mysql
mysql: /usr/bin/mysql /usr/lib64/mysql /usr/include/mysql /usr/share/mysql /usr/share/man/man1/mysql.1.gz

启动mysql

# 查看服务状态
[root@csq ~]# systemctl status mysqld
● mysqld.service - MySQL Server
   Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
   Active: inactive (dead) since Tue 2024-05-07 14:50:20 CST; 20s ago
     Docs: man:mysqld(8)
           http://dev.mysql.com/doc/refman/en/using-systemd.html
# 初始化数据库
[root@csq ~]# mysqld --initalize --console
# 授权
[root@csq ~]# chown -R mysql:mysql /var/lib/mysql
# 启动
[root@csq ~]# systemctl start mysqld
[root@csq ~]# systemctl status mysqld
● mysqld.service - MySQL Server
   Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
   Active: active (running) since Tue 2024-05-07 14:55:09 CST; 3s ago
     Docs: man:mysqld(8)
           http://dev.mysql.com/doc/refman/en/using-systemd.html
  Process: 24825 ExecStart=/usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid $MYSQLD_OPTS (code=exited, status=0/SUCCESS)
  Process: 24807 ExecStartPre=/usr/bin/mysqld_pre_systemd (code=exited, status=0/SUCCESS)
 Main PID: 24830 (mysqld)
   CGroup: /system.slice/mysqld.service
           └─24830 /usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid

May 07 14:55:09 csq systemd[1]: Starting MySQL Server...
May 07 14:55:09 csq systemd[1]: Started MySQL Server.

查看临时密码,登陆mysql,改密码

[root@csq ~]# cat /var/log/mysqld.log  |grep password                                     2024-05-07T06:29:54.096170Z 1 [Note] A temporary password is generated for root@localhost: <enk8:(8wlWf
[root@csq ~]# mysql -u root -p'<enk8:(8wlWf' 
mysql> alter user 'root'@'localhost' identified by '123456';
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
# 设置密码的验证强度等级,设置为low
mysql> set global validate_password_policy=LOW;
Query OK, 0 rows affected (0.00 sec)
# 设置密码长度为6
mysql> set global validate_password_length=6;
Query OK, 0 rows affected (0.00 sec)
# 设置密码,只要满足6位数长度即可
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';     
Query OK, 0 rows affected (0.00 sec)

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
4 rows in set (0.00 sec)
mysql> exit

三、yum安装

安装依赖包

[root@csq ~]# yum install -y perl net-tools

下载地址:http://repo.mysql.com/

[root@csq ~]# wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
[root@csq ~]# rpm -ivh mysql-community-release-el7-5.noarch.rpm 

如果要安装mysql5.7版本,可以设置一下yum仓库

vim /etc/yum.repos.d/mysql-community.repo
# 文件中会显示5.5,5.6,5.7的版本,把5.7版本下的enabled=0改成=1
# 把默认5.6版本下的enabled=1改成0,然后再进行安装就可以了

yum安装mysql-5.7

[root@csq ~]# yum install -y mysql-server
[root@csq ~]# mysql --version
mysql  Ver 14.14 Distrib 5.7.44, for Linux (x86_64) using  EditLine wrapper

开启mysql服务

[root@csq ~]# systemctl start mysqld
[root@csq ~]# systemctl status mysqld
● mysqld.service - MySQL Server
   Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
   Active: active (running) since Tue 2024-05-07 15:37:13 CST; 4s ago
     Docs: man:mysqld(8)

登陆mysql,修改密码

[root@csq ~]# cat /var/log/mysqld.log |grep password
[root@csq ~]# mysql -uroot -p'iywr=#:Wo3yZ'
mysql> alter user 'root'@'localhost' identified by '123456';
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
mysql> set global validate_password_policy=LOW;
Query OK, 0 rows affected (0.00 sec)

mysql> 
mysql> set global validate_password_length=6;
Query OK, 0 rows affected (0.00 sec)

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';     
Query OK, 0 rows affected (0.00 sec)

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
4 rows in set (0.00 sec)

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

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

相关文章

Leetcode—933. 最近的请求次数【简单】

2024每日刷题&#xff08;128&#xff09; Leetcode—933. 最近的请求次数 实现代码 class RecentCounter { public:RecentCounter() {}int ping(int t) {q.push(t);while(t - 3000 > q.front()) {q.pop();}return q.size();} private:queue<int> q; };/*** Your Re…

揭秘 IEEE/ACM Trans/CCF/SCI,谁才是科研界的王者?

会议之眼 快讯 在学术探索的浩瀚星海中&#xff0c;每一篇论文都像是一颗璀璨的星辰&#xff0c;而那些被顶级期刊或会议收录的论文&#xff0c;则无疑是最耀眼的几颗。 在众多评价标准中&#xff0c;IEEE/ACM Transactions、CCF推荐期刊和会议、SCI分区期刊&#xff0c;它们…

一、vue3专栏项目 -- 1、项目介绍以及准备工作

这是vue3TS的项目&#xff0c;是一个类似知乎的网站&#xff0c;可以展示专栏和文章的详情&#xff0c;可以登录、注册用户&#xff0c;可以创建、删除、修改文章&#xff0c;可以上传图片等等。 这个项目全部采用Composition API 编写&#xff0c;并且使用了TypeScript&#…

阴影渲染在AI去衣技术中的关键作用

引言&#xff1a; 随着人工智能技术的飞速发展&#xff0c;深度学习在图像处理领域取得了突破性的进展。其中&#xff0c;AI去衣技术作为一种高度复杂的图像到图像的转换过程&#xff0c;不仅要求算法能够精确地识别并处理衣物纹理和结构&#xff0c;还要求生成的结果具有高度的…

进制乘法表(任意进制均可以)

#include <iostream> // 包含输入输出流库 #include <vector> // 包含向量库&#xff0c;未使用&#xff0c;可以删除 #include <string> // 包含字符串库using namespace std; // 使用标准命名空间// 将十进制数转换为P进制形式的字符串 string toBase(…

Mac数据恢复软件快速比较:适用于Macbook的10佳恢复软件

数据丢失导致无数个人和组织每天损失大量资金。更糟糕的是&#xff0c;某些文件具有货币价值和情感意义&#xff0c;使它们不可替代&#xff0c;并使数据恢复成为唯一可行的选择。最好的消息是Mac用户可以从各种数据恢复程序中进行选择。为了帮助您尽可能快速、轻松地恢复丢失的…

品鉴中的音乐搭配:如何为红酒选择合适的音乐伴侣

品鉴红酒时&#xff0c;音乐是一个不可忽视的元素。合适的音乐能够增强红酒的口感&#xff0c;提升品鉴体验。对于云仓酒庄雷盛红酒而言&#xff0c;如何为其选择合适的音乐伴侣&#xff0c;是一个值得探讨的话题。 首先&#xff0c;了解红酒的风格和特点至关重要。云仓酒庄雷…

vin码查询接口快速对接

vin码查询接口全称叫VIN车辆识别代码查询接口&#xff0c;也叫车架号查询接口&#xff0c;指的是通过车辆VIN&#xff08;车架号&#xff09;查询车辆相关信息&#xff0c;如车辆品牌、车型、油耗、车身形式、排量等等。那么vin查询接口如何快速对接呢&#xff0c;接下来我们聊…

ODOO17数据库安全策略一(ODOO17 Database Security Policy I)

ODOO17作为ERP软件&#xff0c;其核心优势在于数据安全。凭借强大的原生安全机制及灵活的配置&#xff0c;确保数据安全无忧&#xff1a; ODOO17, as an ERP software, boasts its significant advantage in exceptional data security performance. It effectively ensures wo…

##06 神经网络训练基础:一步步构建和完善你的第一个模型

文章目录 前言开始之前&#xff1a;理解神经网络的构成第一步&#xff1a;初始化你的网络和数据第二步&#xff1a;选择损失函数和优化器第三步&#xff1a;训练循环第四步&#xff1a;评估模型和调整第五步&#xff1a;迭代改进示例项目&#xff1a;手写数字识别结语 前言 在…

C#简单创建DLL文件并调用

DLL是Dynamic Link Library的缩写&#xff0c;意为动态链接库。动态链接库其实是由编译器将一系列相关的类型编译、链接并封装成一个独立的文件&#xff0c;与对其进行调用的程序分开。这样一个独立的文件相当于程序的一个模块&#xff0c;如果需要对程序进行更新&#xff0c;只…

大模型日报|今日必读的 3 篇大模型论文

大家好&#xff0c;今日必读的大模型论文来啦&#xff01; 1.清华团队提出“智能体医院”&#xff1a;医生智能体可实现自我进化 在这项工作中&#xff0c;来自清华大学的研究团队提出了一种名为“智能体医院”&#xff08;Agent Hospital&#xff09;的模拟医院&#xff0c;…

火山引擎数据飞轮携手美宜佳 探索拓店营销新思路

在刚刚过去的 3 月&#xff0c;美宜佳又交出了门店增长的高分答卷。 最新数据显示&#xff0c;美宜佳在全国的连锁店数已经超过 35000 家&#xff0c;每年净增 3000-4000 家店&#xff0c;月均服务顾客超 2 亿人次&#xff1b;同时&#xff0c;在中国连锁经营协会(CCFA)近日发布…

本机MySQL数据库服务启动了,但是cmd登录不上10061

注意&#xff1a;不建议安装MySQL8&#xff0c;建议直接使用phpstudy中自带的MySQL5.7 错误信息 ERROR 2003 (HY000): Cant connect to MySQL server on x.x.x.x (10061) 原因 可能是端口号错误。比如修改了my.ini中&#xff0c;或者phpstudy中数据库端口的配置&#xff0c;…

PLX82-EIP-61850 主要特点是什么?

PLX82-EIP-61850是一种基于以太网的电力线通信&#xff08;PLC&#xff09;设备&#xff0c;用于在现有的电力线网络上实现数据通信。这种设备通常用于智能电网、智能家居和工业自动化等领域&#xff0c;以实现远程监控和控制功能。 PLX82-EIP-61850的主要特点包括&#xff1a…

小心电子合同这个坑:PS章

近期&#xff0c;我发现网上有很多教程教大家如何自己动手用PS制作电子章&#xff0c; 看似方便&#xff0c;实则危机四伏&#xff01; 通过PS技术&#xff0c;你可以生成任何一家公司的印章&#xff0c; 用以冒充电子章&#xff0c;或打印出来冒充实体章。 甚至还能进行做旧…

阿里云国际服(alibabacloud)介绍、注册、购买教程?

一、什么是阿里云国际版&#xff1f; 阿里云分为国内版和国际版。国内版仅面向中国大陆客户&#xff0c;国际版面向全球客户。 二、国际版与国内版有何异同&#xff1f; 1&#xff09;异&#xff1a;除了目标客户不同&#xff0c;运营主体不同&#xff0c;所需遵守的法律与政…

【如此简单!数据库入门系列】之效率基石 -- 磁盘空间管理

文章目录 1 前言2 磁盘空间管理3 磁盘空间管理的实现4 存储对象关系5 总结6 系列文章 1 前言 如何将表中的记录存储在物理磁盘上呢&#xff1f; 概念模式中&#xff0c;记录&#xff08;Record&#xff09;表示表中的一行数据&#xff0c;由多个列&#xff08;字段或者属性&…

Web 3.0时代:软文发稿对企业品牌的影响

Web 3.0的到来&#xff0c;标志着我们已经进入了一个全新的互联网时代。在这个新时代中&#xff0c;信息的生成和传播有了更多的可能性和更广的空间。作为企业品牌宣传的重要手段之一的软文发稿&#xff0c;在Web 3.0时代将会面临什么样的挑战和机遇&#xff1f; 首先&#xf…

YouTube广告全教学:形式、投放步骤与技巧(2024年更新)

YouTube作为全球最大的视频分享和观看平台吸引了大量的观众&#xff0c;这一平台以其无与伦比的用户参与度和覆盖范围&#xff0c;重新定义了人们获取与分享知识的方式&#xff0c;同时也为企业开辟了一片前所未有的营销蓝海。 据统计&#xff0c;全球观众平均每天观看 YouTub…
最新文章