源码安装mysql

news2024/12/27 12:15:44

使用源码安装mysql,这里选择的版本是mysql5.7.35 ,系统是Centos7.6

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

在这里插入图片描述

  1. 下载源码压缩包

     [root@localhost ~]# cd /opt
     [root@localhost opt]# wget https://downloads.mysql.com/archives/get/p/23/file/mysql-boost-5.7.35.tar.gz
     [root@localhost opt]# tar -xf mysql-boost-5.7.35.tar.gz
    
  2. 下载依赖软件

     [root@localhost ~]# yum install -y  cmake gcc  gcc-c++ ncurses-devel perl-Data-Dumper boost boost-doc boost-devel bzip2 openssl-devel libtirpc-devel.x86_64
    
  3. 编译安装

     [root@localhost opt]# cd mysql-5.7.35/
    

    ## 新建目录,存放编译产生的中间文件。因为不允许在源码目录下进行编译

     [root@localhost mysql-5.7.35]# mkdir builder
     [root@localhost mysql-5.7.35]# cd builder/
    

    ## 编辑源码

     cmake ../ -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/data/mysql -DSYSCONFDIR=/etc -DMYSQL_USER=mysql -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DMYSQL_TCP_PORT=3306 -DEXTRA_CHARSETS=all -DDEFAULT_CHARSET=utf8mb4 -DDEFAULT_COLLATION=utf8mb4_general_ci -DWITH_DEBUG=0 -DMYSQL_MAINTAINER_MODE=0 -DWITH_SYSTEMD=1 -DDOWNLOAD_BOOST=1 -DWITH_BOOST=../boost
    
  • -DCMAKE_INSTALL_PREFIX=/usr/local/mysql 指定安装目录

  • -DMYSQL_DATADIR=/data/mysql 数据存放目录

  • -DSYSCONFDIR=/etc 配置文件存放目录

  • -DMYSQL_USER=mysql 启动用户

  • -DWITH_MYISAM_STORAGE_ENGINE=1 安装MyISAM引擎

  • -DWITH_INNOBASE_STORAGE_ENGINE=1 安装InnoDB引擎

  • -DWITH_ARCHIVE_STORAGE_ENGINE=1 安装Archive引擎

  • -DWITH_MEMORY_STORAGE_ENGINE=1 安装Memory引擎

  • -DWITH_FEDERATED_STORAGE_ENGINE=1 安装Federated引擎

  • -DWITH_PARTITION_STORAGE_ENGINE=1 安装Partition引擎

  • -DWITH_READLINE=1 MySQL的readline library

  • -DMYSQL_UNIX_ADDR=/tmp/mysql.sock sock文件的路径

  • -DMYSQL_TCP_PORT=3306 MySQL的监听端口

  • -DENABLED_LOCAL_INFILE=1 启用加载本地数据

  • -DENABLE_DOWNLOADS=1 编译时允许自主下载相关文件

  • -DEXTRA_CHARSETS=all 使MySQL支持所有的扩展字符

  • -DDEFAULT_CHARSET=utf8mb4 设置默认字符集为utf8mb4

  • -DDEFAULT_COLLATION=utf8mb4_general_ci 设置默认字符校对

  • -DWITH_DEBUG=0 禁用调试模式

  • -DMYSQL_MAINTAINER_MODE=0 是否启用mysql维护器特定的开发环境

  • -DDOWNLOAD_BOOST=1 允许在线更新boost库

  • -DWITH_BOOST=…/boost 指定boost安装路径

    ## 生成二进制安装程序

      [root@localhost builder]# make
    

    ## 安装

      [root@localhost builder]# make install
    
  1. 创建用户,创建目录,并授权
    ## 创建数据存放目录,编译的时候有指定目录,这里创建指定的目录即可

       [root@localhost builder]# mkdir -p  /data/mysql
    

    ## 创建日志存放目录,pid存放目录

       [root@localhost builder]# mkdir -p /var/log/mysqld /var/run/mysqld
       [root@localhost builder]# touch /var/run/mysqld/mysql.pid  
       [root@localhost builder]# touch /var/log/mysqld/mysqld.log
    

    ## 创建用户

       useradd --system -s /sbin/nologin mysql
    

    # 授权目录权限给用户

       [root@localhost ~]# chown -R mysql:mysql /var/log/mysqld		# 日志目录
       [root@localhost ~]# chown -R mysql:mysql /var/run/mysqld		# 存放目录
       [root@localhost ~]# chown -R mysql:mysql /usr/local/mysql/	# 安装目录
       [root@localhost ~]# chown -R mysql:mysql /data/mysql/        # 数据存放目录
    
  2. 修改配置文件

     [root@localhost ~]# vim /etc/my.cnf
    
    [mysqld]
    basedir=/usr/local/mysql
    datadir=/data/mysql
    socket=/tmp/mysql.sock
    
    [mysqld_safe]
    log-error=/var/log/mysqld/mysqld.log
    pid-file=/var/run/mysqld/mysql.pid
    
  3. 设置环境变量

     [root@localhost ~]# vim /etc/profile
    
    # mysql 
    export MYSQL_HOME=/usr/local/mysql
    export PATH=$PATH:$MYSQL_HOME/bin
    

    ## 加载环境变量,并测试

     source /etc/profile
     mysql --version
    
      mysql  Ver 14.14 Distrib 5.7.35, for Linux (x86_64) using  EditLine wrapper
    
  4. 初始化数据库

    ## 初始化数据库,并生成临时密码

     [root@localhost ~]# mysqld --initialize --user=mysql --basedir=/usr/local/mysql/ --datadir=/data/mysql
    
    2023-11-30T02:02:22.576131Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
    2023-11-30T02:02:23.167149Z 0 [Warning] InnoDB: New log files created, LSN=45790
    2023-11-30T02:02:23.259734Z 0 [Warning] InnoDB: Creating foreign key constraint system tables.
    2023-11-30T02:02:23.324006Z 0 [Warning] No existing UUID has been found, so we assume that this is the first time that this server has been started. Generating a new UUID: 808acff3-8f24-11ee-a4dd-000c29b3fe28.
    2023-11-30T02:02:23.325188Z 0 [Warning] Gtid table is not ready to be used. Table 'mysql.gtid_executed' cannot be opened.
    2023-11-30T02:02:23.765959Z 0 [Warning] A deprecated TLS version TLSv1 is enabled. Please use TLSv1.2 or higher.
    2023-11-30T02:02:23.766008Z 0 [Warning] A deprecated TLS version TLSv1.1 is enabled. Please use TLSv1.2 or higher.
    2023-11-30T02:02:23.766902Z 0 [Warning] CA certificate ca.pem is self signed.
    2023-11-30T02:02:24.007794Z 1 [Note] A temporary password is generated for root@localhost: Vm;n/i<44P(P
    
  5. 将mysql加入到systemd进程中

     [root@localhost ~]# cd /opt/mysql-5.7.35/builder
     [root@localhost builder]# cp scripts/mysqld.service /usr/lib/systemd/system/
    
  6. 启动mysql并修改密码

    ## 启动mysql并加入到开启自启

     [root@localhost ~]# systemctl  start mysqld 
     [root@localhost ~]# systemctl  enable mysqld 
    

    ## 修改mysql密码
    在mysql初始化的时候会生成临时密码

     [root@localhost log]# mysql -uroot -p'Vm;n/i<44P(P'
    
    mysql: [Warning] Using a password on the command line interface can be insecure.
    Welcome to the MySQL monitor.  Commands end with ; or \g.
    Your MySQL connection id is 2
    Server version: 5.7.35
    
    Copyright (c) 2000, 2021, Oracle and/or its affiliates.
    
    Oracle is a registered trademark of Oracle Corporation and/or its
    affiliates. Other names may be trademarks of their respective
    owners.
    
    Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
    
    mysql>
    
     mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'your_password';		# your_password 设置为你的密码
     mysql> use mysql;			
     mysql> update user set host ='%' where user='root';			# 设置root可远程访问,如不需要可忽略
     mysql> FLUSH PRIVILEGES;		# 刷新权限表
    

    ## 登录测试

     [root@localhost log]# mysql -uroot -p'your_password'
    
    mysql: [Warning] Using a password on the command line interface can be insecure.
    Welcome to the MySQL monitor.  Commands end with ; or \g.
    Your MySQL connection id is 3
    Server version: 5.7.35 Source distribution
    
    Copyright (c) 2000, 2021, Oracle and/or its affiliates.
    
    Oracle is a registered trademark of Oracle Corporation and/or its
    affiliates. Other names may be trademarks of their respective
    owners.
    
    Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
    
    mysql> 
    

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

冒个泡!OceanBase亮相 2023 新加坡金融科技节

近日&#xff0c;OceanBase 亮相 Singapore Fintech Festival 2023&#xff08;2023 新加坡金融科技节&#xff09;&#xff01;本届新加坡金融科技节于 2023 年 11 月 15 日至 17 日在新加坡博览展览中心举行&#xff0c;展会期间&#xff0c;OceanBase 得到了众多金融科技机构…

WiFi概念介绍

WiFi概念介绍 1. 什么是WLAN2. 什么是Wi-Fi3. Wi-Fi联盟4. WLAN定义范围5. WiFi协议体系6. 协议架构7. WiFi技术的发展7.1 IEEE802.117.2 802.11标准和补充 8. 术语 1. 什么是WLAN Wireless Local Area Network&#xff0c;采用802.11无线技术进行互连的一组计算机和相关设备。…

windows电脑申请hbuilderx打包证书

hbuilderx现在的最新框架uniapp&#xff0c;可以多端开发不同端的应用&#xff0c;包括小程序、公众号、ios app和安卓app&#xff0c;一份代码就可以生成不同的端。 但是不同的端是需要使用不同的端的证书的&#xff0c;是不能使用公共的证书上架的&#xff0c;必须使用自己的…

adb环境搭建(adb下载与安装)

文章目录 前言一、adb下载二、adb安装1.将下载的安装包解压缩2.将解压缩后的文件夹放到自己想存放的目录下&#xff08;不要放到带有中文的目录下&#xff09;——我这放到D盘根目录下3.配置环境变量3.1.鼠标放到 "此电脑"→鼠标右击→选择属性3.2.点击 "高级系…

Git常用命令#更改用户名

1.查看当前用户信息 git config user.name2.更改用户名 特定仓库中更改用户名 如果你只想在特定仓库中更改用户名&#xff0c;可以在不使用 --global 参数的情况下执行相同的命令&#xff0c;并进入特定仓库的目录进行修改。 cd /path/to/your/repository git config user.na…

0X04

看到一道有趣的misc题 misc签到题 打开后啥都没有&#xff0c;全选后发现每一行有空格&#xff0c;数了一行发现空格数量转ascil码后是f&#xff0c;猜测都如此&#xff0c; 后面就可以交个脚本了&#xff0c;统计之后转换成ascii from Crypto.Util.number import long_to_b…

Android Bitmap 使用Vukan、RenderEffect、GLSL实现模糊

文章目录 Android Bitmap 使用Vukan、RenderEffect、GLSL实现模糊使用 RenderEffect 模糊使用 Vukan 模糊使用 GLSL 模糊RS、Vukan、RenderEffect、GLSL 效率对比 Android Bitmap 使用Vukan、RenderEffect、GLSL实现模糊 本文首发地址 https://blog.csdn.net/CSqingchen/articl…

【PixPin】媲美QQ/Snipaste截图贴图OCR工具

PixPin PixPin是一款截图工具&#xff0c;它集成了截图、长截图、贴图、标注、OCR识别等众多功能&#xff0c;软件体积小巧&#xff0c;使用简单&#xff0c;是一款非常棒的截图工具。之前使用过Snipaste工具的小伙伴用起来应该是得心应手。 从左往右的功能依次是&#xff1a;…

Python编程题集(第三部容器操作 )

Demo61 指定等级 题目描述 读入学生成绩&#xff0c;获取最高分best&#xff0c;然后根据下面的规则赋等级值&#xff1a; &#xff08;1&#xff09;如果分数≥best-10&#xff0c;等级为A &#xff08;1&#xff09;如果分数≥best-20&#xff0c;等级为B &#xff08;1…

LeetCode105.从前序和中序遍历序列构造二叉树

这道题看完题想了几分钟就想到大概的思路了&#xff0c;但是在写的时候有很多细节没注意出了很多问题&#xff0c;然后写了1个多小时&#xff0c;其实这道题挺简单的。 首先&#xff0c;最基本的知识&#xff0c;先序遍历是根左右&#xff0c;中序遍历是左根右&#xff0c;那么…

模糊C均值(Fuzzy C-means,FCM)聚类的可运行的python程序代码,复制即可用!!切记需要安装库 scikit-fuzzy

文章目录 前言一、安装库 scikit-fuzzy二、具体程序代码&#xff08;复制可运行&#xff09;三、结果展示总结 前言 模糊C均值&#xff08;Fuzzy C-means&#xff0c;FCM&#xff09;聚类是一种软聚类方法&#xff0c;它允许数据点属于多个聚类&#xff0c;每个数据点对所有聚…

四、C语言数据类型和变量

目录 1. 数据类型介绍 1.1 字符型 1.2 整型 1.3 浮点型 1.4 布尔类型 1.5 各种数据类型的长度 1.5.1 sizeof 操作符 1.5.2 数据类型长度 2. signed 和 unsigned 3. 数据类型的取值范围 4. 变量 4.1 变量的创建 4.2 变量的分类 5. 算术操作符&#xff1a;、-、*、…

Matlab 点云线性指数计算(加权)

文章目录 一、简介二、实现代码三、实现效果参考资料一、简介 思路其实很简单,即对每个邻近点集中的点,根据其到点集中心的距离进行加权处理(权重函数),之后再基于加权之后的点获取其协方差矩阵,最后再求取其相关的特征值,以此来获取该点的线性指数。相关公式如下所示:…

Linux CentOS7 安装Docker

CentOS7安装Docker&#xff1a; Docker简介 Docker是一个开源的容器化平台&#xff0c;可帮助开发者轻松地创建、部署和运行应用程序。Docker使开发人员能够在一个独立的容器中打包应用程序及其依赖项&#xff0c;这样他们就可以轻松地将应用程序移植到任何其他环境中。Docke…

手把手教你Spring Security Oauth2自定义授权模式

目录 前言1、自定义认证对象2、自定义TokenGranter3、自定义AuthenticationProvider4、配置自定义AuthenticationProvider、自定义TokenGranter5、配置客户端授权模式6、测试 前言 在Oauth2中&#xff0c;提供了几种基本的认证模式&#xff0c;有密码模式、客户端模式、授权码…

一文带你了解网络安全简史

网络安全简史 1. 上古时代1.1 计算机病毒的理论原型1.2 早期计算机病毒1.3 主要特点 2. 黑客时代2.1 计算机病毒的大流行2.2 知名计算机病毒2.3 主要特点 3. 黑产时代3.1 网络威胁持续升级3.2 代表性事件3.3 主要特点 4 高级威胁时代4.1 高级威胁时代到来4.2 著名的APT组织4.3 …

【数据库】数据库并发控制的目标,可串行化序列的分析,并发控制调度器模型

数据库并发控制 ​专栏内容&#xff1a; 手写数据库toadb 本专栏主要介绍如何从零开发&#xff0c;开发的步骤&#xff0c;以及开发过程中的涉及的原理&#xff0c;遇到的问题等&#xff0c;让大家能跟上并且可以一起开发&#xff0c;让每个需要的人成为参与者。 本专栏会定期更…

Linux系统:使用CloudDrive实现云盘本地挂载

此处以不使用Docker服务 系统&#xff1a; Ubuntu22.04 硬件信息&#xff1a; x86_64 1 安装CloudDrive CloudDrive下载地址 在服务器上安装fusemount3 sudo apt-get -y install fuse3下载对应版本的CloudDrive压缩包&#xff0c;我的机器为&#xff1a;clouddrive-2-linux-…

云计算如何创芯:“逆向工作法”的性感之处

在整个云计算领域&#xff0c;能让芯片规模化的用起来&#xff0c;是决定造芯是否成功的天花板。在拉斯维加斯的亚马逊云科技2023 re:Invent则是完美诠释了这一论调。 亚马逊云科技2023 re:Invent开幕前两个小时&#xff0c;有一场小型的欢迎晚宴&#xff0c;《星期日泰晤士报》…

设计模式-结构型模式之适配器设计模式

文章目录 一、结构型设计模式二、适配器模式 一、结构型设计模式 这篇文章我们来讲解下结构型设计模式&#xff0c;结构型设计模式&#xff0c;主要处理类或对象的组合关系&#xff0c;为如何设计类以形成更大的结构提供指南。 结构型设计模式包括&#xff1a;适配器模式&…