mirror of
https://gitee.com/270580156/weiyu.git
synced 2026-05-19 21:57:49 +00:00
1 line
10 KiB
JavaScript
1 line
10 KiB
JavaScript
"use strict";(self.webpackChunkdocs=self.webpackChunkdocs||[]).push([[796],{2937:(e,n,s)=>{s.r(n),s.d(n,{assets:()=>o,contentTitle:()=>c,default:()=>h,frontMatter:()=>i,metadata:()=>l,toc:()=>t});const l=JSON.parse('{"id":"deploy/depend/mysql","title":"MySQL 8.0 \u5b89\u88c5\u6307\u5357","description":"- \u64cd\u4f5c\u7cfb\u7edf\uff1aUbuntu 24.04 LTS","source":"@site/i18n/zh-CN/docusaurus-plugin-content-docs/current/deploy/depend/mysql.md","sourceDirName":"deploy/depend","slug":"/deploy/depend/mysql","permalink":"/docs/zh-CN/docs/deploy/depend/mysql","draft":false,"unlisted":false,"editUrl":"https://github.com/bytedesk/bytedesk/docs/deploy/depend/mysql.md","tags":[],"version":"current","sidebarPosition":1,"frontMatter":{"sidebar_label":"MySQL","sidebar_position":1},"sidebar":"tutorialSidebar","previous":{"title":"Dependencies","permalink":"/docs/zh-CN/docs/category/dependencies"},"next":{"title":"Redis","permalink":"/docs/zh-CN/docs/deploy/depend/redis"}}');var d=s(5723),r=s(6246);const i={sidebar_label:"MySQL",sidebar_position:1},c="MySQL 8.0 \u5b89\u88c5\u6307\u5357",o={},t=[{value:"\u65b9\u5f0f\u4e00\uff1aDocker\u90e8\u7f72\uff08\u63a8\u8350\uff09",id:"\u65b9\u5f0f\u4e00docker\u90e8\u7f72\u63a8\u8350",level:2},{value:"1. \u5355\u5bb9\u5668\u65b9\u5f0f",id:"1-\u5355\u5bb9\u5668\u65b9\u5f0f",level:3},{value:"2. Docker Compose\u65b9\u5f0f\uff08\u9002\u5408\u591a\u5bb9\u5668\u90e8\u7f72\uff09",id:"2-docker-compose\u65b9\u5f0f\u9002\u5408\u591a\u5bb9\u5668\u90e8\u7f72",level:3},{value:"3. \u8fde\u63a5\u5230MySQL",id:"3-\u8fde\u63a5\u5230mysql",level:3},{value:"4. \u5b9e\u7528\u64cd\u4f5c",id:"4-\u5b9e\u7528\u64cd\u4f5c",level:3},{value:"\u65b9\u5f0f\u4e8c\uff1a\u76f4\u63a5\u5b89\u88c5",id:"\u65b9\u5f0f\u4e8c\u76f4\u63a5\u5b89\u88c5",level:2},{value:"1. \u5b89\u88c5MySQL",id:"1-\u5b89\u88c5mysql",level:3},{value:"2. \u914d\u7f6e\u8fdc\u7a0b\u8bbf\u95ee",id:"2-\u914d\u7f6e\u8fdc\u7a0b\u8bbf\u95ee",level:3},{value:"3. \u521b\u5efa\u6570\u636e\u5e93",id:"3-\u521b\u5efa\u6570\u636e\u5e93",level:3}];function a(e){const n={a:"a",admonition:"admonition",code:"code",h1:"h1",h2:"h2",h3:"h3",header:"header",li:"li",ol:"ol",p:"p",pre:"pre",strong:"strong",ul:"ul",...(0,r.R)(),...e.components};return(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(n.header,{children:(0,d.jsx)(n.h1,{id:"mysql-80-\u5b89\u88c5\u6307\u5357",children:"MySQL 8.0 \u5b89\u88c5\u6307\u5357"})}),"\n",(0,d.jsx)(n.admonition,{title:"\u7cfb\u7edf\u8981\u6c42",type:"tip",children:(0,d.jsxs)(n.ul,{children:["\n",(0,d.jsx)(n.li,{children:"\u64cd\u4f5c\u7cfb\u7edf\uff1aUbuntu 24.04 LTS"}),"\n",(0,d.jsx)(n.li,{children:"\u670d\u52a1\u5668\u63a8\u8350\u914d\u7f6e\uff1a4\u68388G\u5185\u5b58"}),"\n"]})}),"\n",(0,d.jsx)(n.h2,{id:"\u65b9\u5f0f\u4e00docker\u90e8\u7f72\u63a8\u8350",children:"\u65b9\u5f0f\u4e00\uff1aDocker\u90e8\u7f72\uff08\u63a8\u8350\uff09"}),"\n",(0,d.jsx)(n.p,{children:"\u4f7f\u7528Docker\u5bb9\u5668\u90e8\u7f72MySQL\u66f4\u7b80\u5355\uff0c\u7279\u522b\u9002\u5408\u5feb\u901f\u642d\u5efa\u5f00\u53d1\u73af\u5883\u3002"}),"\n",(0,d.jsx)(n.h3,{id:"1-\u5355\u5bb9\u5668\u65b9\u5f0f",children:"1. \u5355\u5bb9\u5668\u65b9\u5f0f"}),"\n",(0,d.jsx)(n.pre,{children:(0,d.jsx)(n.code,{className:"language-bash",children:"# \u62c9\u53d6MySQL\u955c\u50cf\ndocker pull mysql:latest\n\n# \u8fd0\u884cMySQL\u5bb9\u5668\uff08\u4e00\u884c\u547d\u4ee4\u5b8c\u6210\u90e8\u7f72\uff09\ndocker run --name mysql-bytedesk \\\n -e MYSQL_ROOT_PASSWORD=your_password \\\n -e MYSQL_DATABASE=bytedesk \\\n -p 13306:3306 \\\n -v mysql_data:/var/lib/mysql \\\n -d mysql:latest\n"})}),"\n",(0,d.jsx)(n.h3,{id:"2-docker-compose\u65b9\u5f0f\u9002\u5408\u591a\u5bb9\u5668\u90e8\u7f72",children:"2. Docker Compose\u65b9\u5f0f\uff08\u9002\u5408\u591a\u5bb9\u5668\u90e8\u7f72\uff09"}),"\n",(0,d.jsxs)(n.ol,{children:["\n",(0,d.jsxs)(n.li,{children:["\n",(0,d.jsxs)(n.p,{children:["\u521b\u5efa",(0,d.jsxs)(n.a,{href:"https://gitee.com/270580156/weiyu/blob/main/deploy/docker/docker-compose-ollama.yaml",children:[(0,d.jsx)(n.code,{children:"docker-compose.yml"}),"\u6587\u4ef6"]}),"\uff1a"]}),"\n",(0,d.jsx)(n.pre,{children:(0,d.jsx)(n.code,{className:"language-yaml",children:'services:\n bytedesk-mysql:\n image: mysql:latest\n container_name: mysql-bytedesk\n environment:\n MYSQL_DATABASE: bytedesk\n MYSQL_ROOT_PASSWORD: r8FqfdbWUaN3\n ports:\n - "13306:3306"\n volumes:\n - mysql_data:/var/lib/mysql\n networks:\n - bytedesk-network\n\nvolumes:\n mysql_data:\n name: bytedesk_mysql_data\n'})}),"\n"]}),"\n",(0,d.jsxs)(n.li,{children:["\n",(0,d.jsx)(n.p,{children:"\u542f\u52a8\u5bb9\u5668\uff1a"}),"\n",(0,d.jsx)(n.pre,{children:(0,d.jsx)(n.code,{className:"language-bash",children:"docker-compose up -d\n"})}),"\n"]}),"\n"]}),"\n",(0,d.jsx)(n.h3,{id:"3-\u8fde\u63a5\u5230mysql",children:"3. \u8fde\u63a5\u5230MySQL"}),"\n",(0,d.jsx)(n.pre,{children:(0,d.jsx)(n.code,{className:"language-bash",children:"# \u547d\u4ee4\u884c\u8fde\u63a5\ndocker exec -it mysql-bytedesk mysql -uroot -p\n"})}),"\n",(0,d.jsx)(n.p,{children:"\u6216\u4f7f\u7528\u56fe\u5f62\u5ba2\u6237\u7aef\uff08\u5982Sequel Ace\uff09\u8fde\u63a5\uff1a"}),"\n",(0,d.jsxs)(n.ul,{children:["\n",(0,d.jsx)(n.li,{children:"\u4e3b\u673a\uff1alocalhost \u6216\u670d\u52a1\u5668IP"}),"\n",(0,d.jsx)(n.li,{children:"\u7aef\u53e3\uff1a13306"}),"\n",(0,d.jsx)(n.li,{children:"\u7528\u6237\u540d\uff1aroot"}),"\n",(0,d.jsx)(n.li,{children:"\u5bc6\u7801\uff1a\u4f60\u8bbe\u7f6e\u7684MYSQL_ROOT_PASSWORD"}),"\n"]}),"\n",(0,d.jsx)(n.h3,{id:"4-\u5b9e\u7528\u64cd\u4f5c",children:"4. \u5b9e\u7528\u64cd\u4f5c"}),"\n",(0,d.jsxs)(n.ul,{children:["\n",(0,d.jsxs)(n.li,{children:["\n",(0,d.jsxs)(n.p,{children:[(0,d.jsx)(n.strong,{children:"\u67e5\u770b\u6570\u636e\u6301\u4e45\u5316\u4f4d\u7f6e"}),"\uff1a"]}),"\n",(0,d.jsx)(n.pre,{children:(0,d.jsx)(n.code,{className:"language-bash",children:"docker volume ls | grep bytedesk_mysql_data\n"})}),"\n"]}),"\n",(0,d.jsxs)(n.li,{children:["\n",(0,d.jsxs)(n.p,{children:[(0,d.jsx)(n.strong,{children:"\u521b\u5efa\u6570\u636e\u5e93"}),"\uff1a"]}),"\n",(0,d.jsx)(n.pre,{children:(0,d.jsx)(n.code,{className:"language-bash",children:"CREATE DATABASE bytedesk CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;\n"})}),"\n"]}),"\n",(0,d.jsxs)(n.li,{children:["\n",(0,d.jsxs)(n.p,{children:[(0,d.jsx)(n.strong,{children:"\u5b89\u5168\u5efa\u8bae"}),"\uff1a"]}),"\n",(0,d.jsxs)(n.ul,{children:["\n",(0,d.jsx)(n.li,{children:"\u4f7f\u7528\u5f3a\u5bc6\u7801"}),"\n",(0,d.jsx)(n.li,{children:"\u5b9a\u671f\u5907\u4efd\u6570\u636e"}),"\n",(0,d.jsx)(n.li,{children:"\u5728\u751f\u4ea7\u73af\u5883\u4e2d\u9650\u5236\u5bb9\u5668\u8d44\u6e90\u4f7f\u7528"}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,d.jsx)(n.h2,{id:"\u65b9\u5f0f\u4e8c\u76f4\u63a5\u5b89\u88c5",children:"\u65b9\u5f0f\u4e8c\uff1a\u76f4\u63a5\u5b89\u88c5"}),"\n",(0,d.jsx)(n.h3,{id:"1-\u5b89\u88c5mysql",children:"1. \u5b89\u88c5MySQL"}),"\n",(0,d.jsxs)(n.ol,{children:["\n",(0,d.jsxs)(n.li,{children:["\n",(0,d.jsxs)(n.p,{children:[(0,d.jsx)(n.a,{href:"https://dev.mysql.com/downloads/repo/apt/",children:"\u4e0b\u8f7d\u5b89\u88c5\u5305"}),"\uff08mysql-apt-config_0.8.29-1_all.deb\uff09"]}),"\n"]}),"\n",(0,d.jsxs)(n.li,{children:["\n",(0,d.jsx)(n.p,{children:"\u5b89\u88c5MySQL\u670d\u52a1\u5668\uff1a"}),"\n",(0,d.jsx)(n.pre,{children:(0,d.jsx)(n.code,{className:"language-bash",children:"# \u5b89\u88c5\u4ed3\u5e93\u914d\u7f6e\u5305\nsudo dpkg -i mysql-apt-config_0.8.29-1_all.deb\n# \u5728\u5f39\u51fa\u754c\u9762\u4e2d\u9009\u62e9\uff1aMySQL 8.0 > OK\n\n# \u66f4\u65b0\u8f6f\u4ef6\u5305\u5e76\u5b89\u88c5MySQL\nsudo apt-get update\nsudo apt-get install mysql-server\n\n# \u5b89\u88c5\u8fc7\u7a0b\u4e2d\u4f1a\u63d0\u793a\u8bbe\u7f6eroot\u5bc6\u7801\uff0c\u8bf7\u9009\u62e9\u6700\u65b0\u7684\u5bc6\u7801\u52a0\u5bc6\u65b9\u5f0f\n"})}),"\n"]}),"\n"]}),"\n",(0,d.jsx)(n.h3,{id:"2-\u914d\u7f6e\u8fdc\u7a0b\u8bbf\u95ee",children:"2. \u914d\u7f6e\u8fdc\u7a0b\u8bbf\u95ee"}),"\n",(0,d.jsxs)(n.ol,{children:["\n",(0,d.jsxs)(n.li,{children:["\n",(0,d.jsx)(n.p,{children:"\u767b\u5f55MySQL\u5e76\u4fee\u6539\u8bbf\u95ee\u6743\u9650\uff1a"}),"\n",(0,d.jsx)(n.pre,{children:(0,d.jsx)(n.code,{className:"language-bash",children:"# \u767b\u5f55MySQL\nmysql -u root -p\n\n# \u6267\u884c\u4ee5\u4e0b\u547d\u4ee4\nuse mysql;\nupdate user set host='%' where user ='root';\nFLUSH PRIVILEGES;\nALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '\u4f60\u7684\u5bc6\u7801';\nFLUSH PRIVILEGES;\nGRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;\nFLUSH PRIVILEGES;\nexit;\n"})}),"\n"]}),"\n",(0,d.jsxs)(n.li,{children:["\n",(0,d.jsx)(n.p,{children:"\u4fee\u6539MySQL\u914d\u7f6e\u6587\u4ef6\uff1a"}),"\n",(0,d.jsx)(n.pre,{children:(0,d.jsx)(n.code,{className:"language-bash",children:"sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf\n# \u627e\u5230 bind-address = 127.0.0.1 \u8fd9\u4e00\u884c\u5e76\u6ce8\u91ca\u6389\uff08\u524d\u9762\u52a0#\uff09\n# \u4fdd\u5b58\u9000\u51fa\n"})}),"\n"]}),"\n",(0,d.jsxs)(n.li,{children:["\n",(0,d.jsx)(n.p,{children:"\u5f00\u542f\u9632\u706b\u5899\u7aef\u53e3\uff08\u4e91\u670d\u52a1\u5668\u9700\u8981\uff09\uff1a"}),"\n",(0,d.jsxs)(n.ul,{children:["\n",(0,d.jsx)(n.li,{children:"\u5728\u963f\u91cc\u4e91\u6216\u817e\u8baf\u4e91\u63a7\u5236\u53f0\u5f00\u542f3306\u7aef\u53e3\u8bbf\u95ee\u6743\u9650"}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,d.jsx)(n.h3,{id:"3-\u521b\u5efa\u6570\u636e\u5e93",children:"3. \u521b\u5efa\u6570\u636e\u5e93"}),"\n",(0,d.jsx)(n.pre,{children:(0,d.jsx)(n.code,{className:"language-bash",children:"# \u767b\u5f55MySQL\nmysql -u root -p\n\n# \u521b\u5efa\u6570\u636e\u5e93\nCREATE DATABASE bytedesk CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;\n\n# \u4f7f\u7528\u6570\u636e\u5e93\nuse bytedesk;\n"})})]})}function h(e={}){const{wrapper:n}={...(0,r.R)(),...e.components};return n?(0,d.jsx)(n,{...e,children:(0,d.jsx)(a,{...e})}):a(e)}},6246:(e,n,s)=>{s.d(n,{R:()=>i,x:()=>c});var l=s(2155);const d={},r=l.createContext(d);function i(e){const n=l.useContext(r);return l.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function c(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(d):e.components||d:i(e.components),l.createElement(r.Provider,{value:n},e.children)}}}]); |