源码安装mysql
使用源码安装mysql,这里选择的版本是mysql5.7.35 ,系统是Centos7.6
官网下载地址:https://downloads.mysql.com/archives/community/

-
下载源码压缩包
[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 -
下载依赖软件
[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 -
编译安装
[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=1MySQL的readline library -
-DMYSQL_UNIX_ADDR=/tmp/mysql.socksock文件的路径 -
-DMYSQL_TCP_PORT=3306MySQL的监听端口 -
-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
-
创建用户,创建目录,并授权
## 创建数据存放目录,编译的时候有指定目录,这里创建指定的目录即可[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/ # 数据存放目录 -
修改配置文件
[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 -
设置环境变量
[root@localhost ~]# vim /etc/profile# mysql export MYSQL_HOME=/usr/local/mysql export PATH=$PATH:$MYSQL_HOME/bin## 加载环境变量,并测试
source /etc/profilemysql --versionmysql Ver 14.14 Distrib 5.7.35, for Linux (x86_64) using EditLine wrapper -
初始化数据库
## 初始化数据库,并生成临时密码
[root@localhost ~]# mysqld --initialize --user=mysql --basedir=/usr/local/mysql/ --datadir=/data/mysql2023-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 -
将mysql加入到systemd进程中
[root@localhost ~]# cd /opt/mysql-5.7.35/builder[root@localhost builder]# cp scripts/mysqld.service /usr/lib/systemd/system/ -
启动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.35Copyright (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 distributionCopyright (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
使用源码安装mysql,这里选择的版本是mysql5.7.35 ,系统是Centos7.6 官网下载地址:https://downloads.mysql.com/archives/community/ 下载源码压缩包 [rootlocalhost ~]# cd /opt[rootlocalhost opt]# wget https://downloads.mysql.com/archives/get/…...
注解方式优雅的实现Redisson分布式锁
1.前言 随着微服务的快速推进,分布式架构也得到蓬勃的发展,那么如何保证多进程之间的并发则成为需要考虑的问题。因为服务是分布式部署模式,本地锁Reentrantlock和Synchnorized就无法使用了,当然很多同学脱口而出的基于Redis的se…...
服务器安装JDK17 版本显示JDK8
服务器之前安装的是JDK8,后面升级JDK17后,发现执行 java -vsrsion 显示的是此时我的环境变量已经换成了JAVA17的路径 输入: vim /etc/profile 解决办法: 1.更新自己环境变量 bash export JAVA_HOME/usr/local/jdk-17.0.7 …...
利用MCMC 获得泊松分布
写出概率流方程如下 if state 0: if np.random.random() < min([Lambda/2, 1]):state 1else:passelif state 1:if choose_prob_state[i] < 0.5:#选择 1 -> 0,此时的接受概率为min[2/Lambda, 1]if np.random.random() < min([2/Lambda, 1]…...
docker-compose脚本编写及常用命令
安装 linux DOCKER_CONFIG/usr/local/lib/docker/cli-plugins sudo mkdir -p $DOCKER_CONFIG/cli-plugins sudo curl -SL https://521github.com/docker/compose/releases/download/v2.6.1/docker-compose-linux-x86_64 -o $DOCKER_CONFIG/cli-plugins/docker-compose sudo c…...
编译企业微信会话内容存档PHP版SDK扩展
1.下载SDK 如果克隆不了,就页面下载 git clone https://github.com/pangdahua/php7-wxwork-finance-sdk2.下载企微官网C版本的最新sdk文件 下载地址:https://wwcdn.weixin.qq.com/node/wework/images/sdk_20201116.rar 下载以后将解压之后的文件夹里l…...
传统算法:使用 Pygame 实现K-Means 聚类算法
使用 Pygame 模块演示了 K-Means 聚类算法的基本原理。让我逐步解释它的实现: 初始化和基本设置 Pygame 初始化: 通过 pygame.init() 初始化 Pygame。 定义颜色和屏幕大小: 定义了一些颜色常量(WHITE, BLACK, RED, GREEN, BLUE)和屏幕的宽度和高度。 创建 Pygame 窗口:…...
WebUI工作流插件超越ComfyUI
在AI绘画领域,Stable Diffsion是最受欢迎的,因为它是开源软件。 开源有两大优势,一是免费,二是适合折腾。 大量的开发者、爱好者投入无尽的热情,来推动Stable Diffsion的快速发展。 在图形界面方面,WebU…...
Docker容器化平台及其优势和应用场景介绍
Docker是一种开源的容器化平台,它基于操作系统级别虚拟化技术,可以将应用程序及其依赖项打包成一个独立的容器,提供轻量级、一致性、可移植性的应用环境。Docker的基本概念和优势如下: 镜像(Image):Docker容器的基础&…...
Hive:从HDFS回收站恢复被删的表
场景 一张手工维护的内部表,本来排查没有使用,然后删掉了,发现又需要使用,只能恢复这张表了。 1.确认HDFS是否开启回收站功能 2.查看回收站中的数据 被删除的数据会放在删除数据时使用的用户目录下,如:使…...
TZOJ 1387 人见人爱A+B
答案: #include <stdio.h> void time(int ah, int am, int as, int bh, int bm, int bs, int* sum_h, int* sum_m, int* sum_s) //不需要返回值所以定义void函数,前面6个为输入,然后用指针存给后面三个 {*sum_s (as bs) % 60; …...
校园圈子系统丨交友丨地图找伴丨二手市场等功能丨源码交付支持二开丨APP小程序H5三端交付!
校园圈子系统是一款专为校园生活设计的智能应用,拥有丰富多样的功能模块,提供全方位的服务。无论您是师生还是校友,我们都为您打造了一个与校园紧密相连的交流平台。 通过校园圈子系统,您可以方便地浏览校内最新动态,包…...
java操作windows系统功能案例(一)
下面是一个Java操作Windows系统功能的简单案例: 获取系统信息: import java.util.Properties;public class SystemInfo {public static void main(String[] args) {Properties properties System.getProperties();properties.list(System.out);} }该程…...
【双向链表的实现】
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 目录 前言 1. 双向链表的结构 2. 双向链表的实现 2.1 头文件 ——双向链表的创建及功能函数的定义 2.2 源文件 ——双向链表的功能函数的实现 2.3 源文件 ——双向链表功能的…...
中台战略思想与架构总结
中台战略思想与架构总结 在2015年年中,马云带领阿里高管,拜访了游戏公司Supercell,以《部落战争》《海岛奇兵》《卡通农场》等游戏知名。 Supercell是一家典型的以小团队模式进行游戏开发的公司,一般来说两个员工,或…...
VUE2+THREE.JS点击事件
THREE.JS点击事件 1.增加监听点击事件2.点击事件实现3.记得关闭页面时 销毁此监听事件 1.增加监听点击事件 renderer.domElement.addEventListener("click", this.onClick, false); 注:初始化render时监听 2.点击事件实现 onClick(event) {const raycaster new …...
基于SSM+SpringBoot+Vue小区车位租赁系统
[技术实现] 小区车位租赁系统是使用SSMSpringBootVue前后端分离的管理系统。使用Spring框架可以在自动注入项目层级之间的调用对象,方便解耦,SpringMVC是体现了MVC设计思想的轻量级web框架,对web层进行解耦,使开发更简洁,MyBatis…...
Oracle(2-8)Configuring the Database Archiving Mode
文章目录 一、基础知识1、Redo Log History2、NOARCHIVELOG Mode 非归档模式3、ARCHIVELOG Mode 归档模式4、Changing the Archiving Mode 更改归档模式5、Auto and Manual Ar…...
制造企业建设数字工厂管理系统的难点主要有哪些
随着科技的飞速发展,制造企业正面临着从传统生产模式向数字化、智能化转型的挑战。其中,建设数字工厂管理系统是实现这一目标的重要途径。然而,在实际操作过程中,制造企业往往会遇到一系列难点。本文将对这些难点进行详细的分析。…...
基于UDP网络聊天室OICQ
Linux系统 Gcc Gdb makefile 实现局域网OICQ程序设计,包括客户端和服务端。 客户端描述:客户端运行开始出现登陆界面。与服务端进行连接,连接后把账号信息发送给服务端,服务端验证后,把确认结果通知客户端。如果通…...
树莓派超全系列教程文档--(62)使用rpicam-app通过网络流式传输视频
使用rpicam-app通过网络流式传输视频 使用 rpicam-app 通过网络流式传输视频UDPTCPRTSPlibavGStreamerRTPlibcamerasrc GStreamer 元素 文章来源: http://raspberry.dns8844.cn/documentation 原文网址 使用 rpicam-app 通过网络流式传输视频 本节介绍来自 rpica…...
练习(含atoi的模拟实现,自定义类型等练习)
一、结构体大小的计算及位段 (结构体大小计算及位段 详解请看:自定义类型:结构体进阶-CSDN博客) 1.在32位系统环境,编译选项为4字节对齐,那么sizeof(A)和sizeof(B)是多少? #pragma pack(4)st…...
通过Wrangler CLI在worker中创建数据库和表
官方使用文档:Getting started Cloudflare D1 docs 创建数据库 在命令行中执行完成之后,会在本地和远程创建数据库: npx wranglerlatest d1 create prod-d1-tutorial 在cf中就可以看到数据库: 现在,您的Cloudfla…...
循环冗余码校验CRC码 算法步骤+详细实例计算
通信过程:(白话解释) 我们将原始待发送的消息称为 M M M,依据发送接收消息双方约定的生成多项式 G ( x ) G(x) G(x)(意思就是 G ( x ) G(x) G(x) 是已知的)࿰…...
如何在看板中体现优先级变化
在看板中有效体现优先级变化的关键措施包括:采用颜色或标签标识优先级、设置任务排序规则、使用独立的优先级列或泳道、结合自动化规则同步优先级变化、建立定期的优先级审查流程。其中,设置任务排序规则尤其重要,因为它让看板视觉上直观地体…...
Psychopy音频的使用
Psychopy音频的使用 本文主要解决以下问题: 指定音频引擎与设备;播放音频文件 本文所使用的环境: Python3.10 numpy2.2.6 psychopy2025.1.1 psychtoolbox3.0.19.14 一、音频配置 Psychopy文档链接为Sound - for audio playback — Psy…...
MySQL中【正则表达式】用法
MySQL 中正则表达式通过 REGEXP 或 RLIKE 操作符实现(两者等价),用于在 WHERE 子句中进行复杂的字符串模式匹配。以下是核心用法和示例: 一、基础语法 SELECT column_name FROM table_name WHERE column_name REGEXP pattern; …...
多种风格导航菜单 HTML 实现(附源码)
下面我将为您展示 6 种不同风格的导航菜单实现,每种都包含完整 HTML、CSS 和 JavaScript 代码。 1. 简约水平导航栏 <!DOCTYPE html> <html lang"zh-CN"> <head><meta charset"UTF-8"><meta name"viewport&qu…...
初探Service服务发现机制
1.Service简介 Service是将运行在一组Pod上的应用程序发布为网络服务的抽象方法。 主要功能:服务发现和负载均衡。 Service类型的包括ClusterIP类型、NodePort类型、LoadBalancer类型、ExternalName类型 2.Endpoints简介 Endpoints是一种Kubernetes资源…...
QT3D学习笔记——圆台、圆锥
类名作用Qt3DWindow3D渲染窗口容器QEntity场景中的实体(对象或容器)QCamera控制观察视角QPointLight点光源QConeMesh圆锥几何网格QTransform控制实体的位置/旋转/缩放QPhongMaterialPhong光照材质(定义颜色、反光等)QFirstPersonC…...
