Ubuntu系统上mysql服务部署

前段时间搞了一个mysql服务端的部署,在Ubuntu系统上,中间也踩了许多坑,特此记录下。

下载

官网:MySQL :: MySQL Community Downloads

这个里面有不同系统的安装包,根据自己的系统选择,我选了

  • MySQL Community Servericon-default.png?t=O83Ahttps://dev.mysql.com/downloads/mysql/

部署

  1. 官网下载tar.xz包;
  2. 解压到/opt目录,重命名为mysql-8.1;
  3. 进入mysql-8.1目录,创建data目录;
  4. 将mysql-8.1目录的用户和组改为mysql,权限都设为777:
    groupadd mysql;
    useradd -r -g mysql mysql;
    chown -R mysql:mysql mysql-8.1;
  5. 创建my.cnf文件,放置在哪都可以,一般是/etc/my.cnf,内容如下:
    [mysqld]
    bind-address=0.0.0.0
    port=3306
    user=mysql
    basedir=/opt/mysql/mysql-8.1
    datadir=/opt/mysql/mysql-8.1/data
    socket=/tmp/mysql.sock
    log-error=/opt/mysql/mysql-8.1/data/mysql.err
    pid-file=/opt/mysql/mysql-8.1/data/mysql.pid
    max_connections=10000
    max_user_connections=2000
    wait_timeout=200
    character_set_server=utf8mb4
    symbolic-links=0
    explicit_defaults_for_timestamp=true
    lower_case_table_names=0
    # 注意:/etc/my.cnf 中的lower_case_table_names代表是否区分大小写,写1会在启动mysql服务时报错,所以改成了0;
  6. 进入/opt/mysql/mysql-8.1/bin目录,执行数据库初始化命令:
    sudo ./mysqld --defaults-file=/etc/my.cnf --basedir=/opt/mysql/mysql-8.1 --datadir=/opt/mysql/mysql-8.1/data --user=mysql --initialize
    这个命令第一次执行需要2min,它会在data目录中生成很多文件。
    --user指定以哪个用户启动;
    初始化密码在/opt/mysql/mysql-8.1/data/mysql.err查看;
  7. 启动mysql服务
    将/opt/mysql/mysql-8.1/support-files/mysql.server的basedir和datadir字段赋值:
    basedir=/opt/mysql/mysql-8.1
    datadir=/opt/mysql/mysql-8.1/data
    尝试启动 sudo ./mysql.server start
    # 启动可能报错,具体报错信息在/opt/mysql/mysql-8.1/data/mysql.pid查看;
    报 my_print_defaults:未找到命令错误:
    sudo ln -s /opt/mysql/mysql-8.1/bin/my_print_defaults /usr/bin;
    启动成功后,就可先停掉,通过步骤8正式设置启动命令。
  8. 将启动进程添加到系统进程中
    cp mysql.server /etc/init.d/mysqld
    ln -s /etc/init.d/mysqld /etc/init.d/mysql
    systemctl enable mysql  --设置开机自启动
  9. mysql服务启动成功后,进入/opt/mysql/mysql-8.1/bin目录,执行./mysql -uroot -p,输入初始密码进入数据库,然后通过alter user 'root'@'localhost' identified by 'new_passwd'; 语句设置新密码。

以上就完成mysql服务端的部署,如果需要远程客户端访问该服务器,还需要进行一些配置,可参考如何开启MySQL远程访问权限允许远程连接? - 流云1 - 博客园 。

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

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

相关文章

linux 服务器 一次性查看 CPU、内存和磁盘使用情况

创建 vi check_usage.sh #!/bin/bashecho " CPU 使用率 " mpstat -P ALL 1 1echo -e "\n 内存使用情况 " free -hecho -e "\n 磁盘使用率 " df -h执行授权 chmod x check_usage.sh执行查看 ./check_usage.sh这样可以快速获取系统资源的概览。…

Unity HDRP Water Surface 水系统 基础教程

Unity HDRP Water Surface 水系统 基础教程 Unity Water SurfaceUnity 项目创建Unity Water Surface:Ocean(海洋)简介Ocean:Transform、GeneralOcean:Simulation(仿真模拟)Ocean:Sim…

【Golang】Golang基础语法(三):常量

常量 Golang 语言当中常量的定义和其它语言类似。 const filename_in_package string "abc.txt" // 可以定义为包内常量func consts() {const filename string "abc.txt" // 可以为常量规定类型const a, b 3, 4 // 也可以不规定const…

Cesium-环境搭建

安装步骤 1.安装node.js 2.去Cesium官网下载源码包 other:npm install Cesium 通过这种方式装 ,没有装成功,主要错误提示说缺少gulp文件,具体错误如下 ​ [1/5] Validating package.json... [2/5] Resolving packages... success Already up-to-date. $ gulp prepare &a…

mysql基础学习1

useradd -r -g mysql -s /bin/false mysql (-r)系统用户 不能登录 A temporary password is generated for rootlocalhost: d>#jT7rfoaz) 看是否启动 看进程 端口 直接连接 看日志 varchar (20) char(20)更耗空间 create table student_info(id int,name varchar(20),s…

行业Know-How助力零售企业数字化转型|StartDT Talk

【StartDT Talk】“客户成功三要素”系列直播第三期圆满收官! 本期直播聚焦于三要素之一的“好的行业Know-How”(行业理解),由奇点云创始人行在和资深产研专家追风共同探讨与零售相关的行业知识,以及我们在零售行业的…

linux——进程间通信system V消息队列

Linux——命名管道及日志-CSDN博客 文章目录 目录 文章目录 前言 一、system V消息队列是什么? 二、相关库接口 1.shmget接口 2、ftok接口 3、shmget、ftok接口封装 4、共享内存操作 ​编辑 5、shmdt接口 三.函数的调用 1、查看共享内存 2、shell 四…

【Redis】not support: redis

1、查看redis进程 2、查看是否安装redis扩展,此处以宝塔为例

网站维护记录

服务器重启,网站打不开:chown -R manager:manager /run/php-fpm/www.sock wordpress升级需设置ftp: // 设置权限0777 //define("FS_METHOD", "direct"); //define("FS_CHMOD_DIR", 0777); //define("…

XiYan-SQL:⼀种多⽣成器集成的Text-to-SQL框架

发布于:2024 年 12 月 03 日 星期二 北京 #NL2SQL #阿里巴巴 #Text-to-SQL 文提出了一种用于自然语言到 SQL 转换的多生成器集成框架 ——XiYan-SQL,旨在应对大型语言模型在 NL2SQL 任务中的挑战。该框架融合提示工程与监督微调(SFT)方法,利用 SFT 的可控性与上下文学习(…

283.移动零(快慢指针)

目录 题目过程解法 题目 给定一个数组 nums&#xff0c;编写一个函数将所有 0 移动到数组的末尾&#xff0c;同时保持非零元素的相对顺序。 请注意 &#xff0c;必须在不复制数组的情况下原地对数组进行操作。 过程 class Solution { public:void moveZeroes(vector<int…

L17.【LeetCode笔记】另一棵树的子树

目录 1.题目 代码模板 2.分析 3.代码 4.提交结果 1.题目 https://leetcode.cn/problems/subtree-of-another-tree/description/ 给你两棵二叉树 root 和 subRoot 。检验 root 中是否包含和 subRoot 具有相同结构和节点值的子树。如果存在&#xff0c;返回 true &#xff…

天天AI-241302:今日热点-B站第二届超级科学晚聚焦AIGC,年度播放量突破300亿次

2AGI.NET 天天 AI 天天AI&#xff1a;AIGC技术引领科学与媒体新浪潮天天AI&#xff1a;AIGC技术引领科学与媒体新浪潮https://www.2agi.net/blog/daily-ai-aigc-technology-leads-science-and-media-new-wave/ 1. B站第二届超级科学晚聚焦AIGC&#xff0c;年度播放量突破300亿…

MySQL数据集成到广东省追溯平台的销售信息同步方案

销售信息同步--外购上报流程2&#xff1a;MySQL数据集成到广东省特殊食品电子追溯平台 在现代数据驱动的业务环境中&#xff0c;确保销售信息的准确性和及时性至关重要。本文将分享一个具体的技术案例&#xff0c;展示如何通过轻易云数据集成平台&#xff0c;将MySQL中的销售信…

vue-qr在线生成二维码组件(vue2版本)

在对于二维码生成中有许多组件&#xff0c;下面介绍关于自定义比较高的vue-qr组件&#xff0c;能自定义设置背景颜色、背景图片、背景Gif图、实点和空白区的颜色、中心Logo的图片和边距。 依赖下载 注意&#xff1a; 直接npm下载最新版 有些项目可能运行会抱错 这时候你可以降…

C#/.NET/.NET Core技术前沿周刊 | 第 15 期(2024年11.25-11.30)

前言 C#/.NET/.NET Core技术前沿周刊&#xff0c;你的每周技术指南针&#xff01;记录、追踪C#/.NET/.NET Core领域、生态的每周最新、最实用、最有价值的技术文章、社区动态、优质项目和学习资源等。让你时刻站在技术前沿&#xff0c;助力技术成长与视野拓宽。 欢迎投稿、推荐…

Ngrok快速将你的本地Streamlit应用创建一个公共的 URL,供外网访问

目录 1 Ngrok介绍2 Ngrok 的工作原理3 Ngrok安装4 启动Streamlit应用5 Ngrok搭建外网访问 1 Ngrok介绍 Ngrok 是一个开源工具和商业服务&#xff0c;可以为你的本地应用创建一个安全的公共 URL&#xff0c;使其能够通过互联网访问&#xff0c;而无需复杂的网络配置&#xff08…

青龙面板的定时规则

6个数字的定时规则&#xff0c; 第1个是秒&#xff0c;第2个是分&#xff0c;第3个是时&#xff0c;第4个是每月的哪日&#xff0c;第5个是哪月&#xff0c;第6个是每周的周几。 数字之间空格隔开。 不限制的用*号替代&#xff0c;定期的时间用“?”替代&#xff0c;间隔运…

XSS(DOM)-HIGH错误总结

HIGH就不从简单的开始。 我们直接闭合HTML标签绕过 ></option></select><img srcx:alert(alt) οnerrοreval(src) altxss> 没有变化 这里应该是后端的问题&#xff0c;试试锚点注入 English#<script>alert(xss)</script> 这里不知道什么…

深度学习图像增强介绍

目录 一、引言二、常用数据增广方法三、图像变换类3.1 AutoAugment3.2 RandAugment 四、图像裁剪类4.1 Cutout4.2 RandomErasing4.3 HideAndSeek 五、图像混叠5.1 Mixup5.2 Cutmix 六、结论 一、引言 在图像分类任务中&#xff0c;图像数据的增广是一种常用的正则化方法&#…