deepin20.1系统安装MySQL8.0.23(超详细的MySQL8安装教程)
作者:蓬松-西兰花 发布时间:2024-01-25 14:26:21
下载MySQL-8.0.23
点击下载:mysql-8.0.23-linux-glibc2.12-x86_64.tar.xz
解压MySQL的安装包到一个目录(这里我选择的是:/usr/local)
sudo tar -Jxv -f /home/×××shanlin/Downloads/mysql-8.0.23-linux-glibc2.12-x86_64.tar.xz -C /usr/local/
注意:/home/×××shanlin/Downloads/ 是我的浏览器保存文件的目录
创建软链接(操作方便:可以认为是给mysql-8.0.23-linux-glibc2.12-x86_64目录起了一个别名叫mysql)
sudo ln -s /usr/local/mysql-8.0.23-linux-glibc2.12-x86_64 mysql
创建一个目录负责存储MySQL的数据(/data/mysql/data)和生成数据库的连接文件mysql.sock(/var/run/mysqld)
sudo mkdir -p /data/mysql/data
sudo mkdir -p /var/run/mysqld
创建mysql用户组和用户
sudo groupadd mysql
sudo useradd -r -g mysql mysql
给 /data/mysql/data 和 /var/run/mysqld 目录赋予权限
sudo chown mysql:mysql -R /data/mysql/data
sudo chown mysql:mysql -R /var/run/mysqld
创建一个my.cnf文件
通过 which mysqld 命令来查看mysqld的位置:我的是 /usr/local/mysql/bin/mysqld,然后通过 /usr/local/mysql/bin/mysqld --verbose --help |grep -A 1 ‘Default options' 命令来查看my.cnf可以创建的位置:
Default options are read from the following files in the given order:
/etc/my.cnf /etc/mysql/my.cnf /usr/local/mysql/etc/my.cnf /usr/local/mysql/my.cnf ~/.my.cnf
查看/etc/my.cnf、/etc/mysql/my.cnf、/usr/local/mysql/etc/my.cnf、/usr/local/mysql/my.cnf 如果都没找到my.cnf文件,就在 /usr/local/mysql/ 创建一个新的my.cnf文件,下面是my.cnf文件内容:
[mysqld]
bind-address=0.0.0.0
port=3306
user=mysql
basedir=/usr/local/mysql
datadir=/data/mysql/data
socket=/var/run/mysqld/mysqld.sock
log-error=/data/mysql/data/mysql.err
pid-file=/data/mysql/data/mysql.pid
character_set_server=utf8mb4
symbolic-links=0
explicit_defaults_for_timestamp=true
default_authentication_plugin=mysql_native_password
#解决Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)错误
[client]
port=3306
socket=/var/run/mysqld/mysqld.sock
#直接用vim创建my.cnf并写入上面的内容
sudo vim /usr/local/mysql/my.cnf
配置MySQL的环境变量
#mysql
MYSQL_HOME=/usr/local/mysql
PATH=$PATH:$MYSQL_HOME/bin
export PATH MYSQL_HOME
#把上面的内容写在profile文件的最后
sudo vim /etc/profile
#环境变量立即生效
sudo source /etc/profile
安装MySQL
sudo /usr/local/mysql/bin/mysqld --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql/data --initialize
正常安装后,最后会显示 :
A temporary password is generated for root@localhost: x2yfhWE>0FiR (冒号后是随机密码,每个人都不同)
记住冒号后的随机密码
开启MySQL服务
sudo /usr/local/mysql/support-files/mysql.server start
将MySQL进程放入系统进程中
sudo cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
在 /usr/bin 下建立指向MySQL的软连接
sudo ln -s /usr/local/mysql/bin/mysql /usr/bin
使用随机密码登录MySQL数据库
mysql -u root -p
为root用户设置新密码
alter user 'root'@'localhost' identified by '123456';
来源:https://blog.csdn.net/m0_48642619/article/details/113091140
猜你喜欢
- MobaXterm一款强大好用的远程终端登录利器,之前操作远端服务器一直使用的是XShell和Xftp,后来偶得一神器MobaXterm,能
- fixtures调用其他fixtures及fixture复用性 pytest最大的优点之一就是它非常灵活。它可以将复杂的测试需求简
- 有什么办法可以列出数据视图吗?有,假设当前数据库为flashdays,则我们可用下列代码列出它的数据视图:pubDatabase
- 本文实例讲述了python监控网站运行异常并发送邮件的方法。分享给大家供大家参考。具体如下:这是一个简单的python开发的监控程序,当指定
- 今天有点囧a=['XXXX_game.sql', 'XXXX_game_sp.sql', 'XXXX
- 本文实例讲述了python实现bucket排序算法。分享给大家供大家参考。具体实现方法如下:def bucketSort(a, n, buc
- 对于时间数据,如2018-09-25 09:28:59,有时需要与Unix时间戳进行相互的运算,此时就需要对两种形式进行转换,在Python
- 这篇文章主要介绍了python自动化unittest yaml使用过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参
- 这里给大家分享的是使用python实现将100以内的质数挑选出来代码非常简单,就不多废话了。"""使用filt
- 用Python发送126邮件,供大家参考,具体内容如下今天想做个自动化邮件提醒的功能,最近刚好在学习python,都说python那么强大,
- udf_WeekDayName 代码如下:CREATE FUNCTION [dbo].[udf_WeekDayName] ( ) RETUR
- 这篇文章主要介绍了Python Selenium参数配置方法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值
- 在项目中遇到需要支持上传gif图片,并把其分解的帧图片一次展示给用户。话不多说直接上代码分解gif图片需要使用libgif-js这个库!1.
- 目录前言掘金的成长搬家命令行工具环境配置main.pycookie.jsongithub 地址前言最近不少写博客的朋友跟我反馈博客园的一些文
- 一、array_map() 1、array_map() 函数将用户自定义函数作用到数组中的每
- ubuntu 14.04 + python3.4 + chrome, 在浏览器中查看tensorboard, 发现出了graph,其他的数据
- 1、将python程序打包成单文件(使用 -F 参数)后,尝试运行外部文件却提示找不到的问题当你将python程序打包成单文件(使用 -F
- 选择题以下python代码输出什么?a = [2,3,1]sorted(a)print(a)A aB [3, 2, 1]C [2, 3, 1
- 接下来,我们将实现微信朋友圈的爬取。如果直接用 Charles 或 mitmproxy 来监听微信朋友圈的接口数据,这是无法实现爬取的,因为
- 怎么增大MySQL数据库连接数,MYSQL数据库安装完成后,默认连接数是100,流量稍微大一点的论坛或网站这个连接数是不够哟用