首页 > 数据库 >Linux安装mysql

Linux安装mysql

时间:2024-10-22 13:00:12浏览次数:1  
标签:-- 安装 mysql usr Linux root local


LINUX安装MYSQL详细教程(两种安装方法)

 参考:https://www.cnblogs.com/csjoz/p/18178796

Linux之Mysql安装配置

第一种:Linux离线安装Mysql(提前手动下载好tar.gz包)
第二种:通过yum安装配置Mysql(服务器有网络)
第一种:tar.gz包安装
1、 查看是否已经安装 Mysql
rpm -qa | grep mysql

如果没有什么返回信息,说明没有安装 Mysql,那么直接进入2


2、下载官方 Mysql 包
官方下载地址
选择对应的包 如下mysql5.7(最常用)


3. 上传到服务器后解压(解压后可删除安装包,节省空间)
一般放在在/usr/local目录下

# 解压文件至/usr/local/目录
tar -zxvf mysql-5.7.20-linux-glibc2.12-x86_64.tar.gz
# 重命名为 mysql
mv /usr/local/mysql-5.7.20-linux-glibc2.12-x86_64/ /usr/local/mysql

解压重命名后目录一般是这样的


4、创建用户组
至于为什么要创建用户和组可以看看这篇 Linux下安装Mysql为什么要创建对应的用户和用户组

groupadd mysql #创建用户组
# -r 参数表示 mysql 用户是系统用户,不可用于登录系统,创建用户 mysql 并将其添加到用户组 mysql 中
useradd -r -g mysql mysql

分配用户组

chown -R mysql /usr/local/mysql/ # 将文件的所有属性改为 mysql 用户
chgrp -R mysql /usr/local/mysql/ # 将组属性改为 mysql 组

5.创建数据目录并赋予权限
mkdir -p /data/mysql #数据目录
chown mysql:mysql -R /data/mysql

6.修改配置文件 vim /etc/my.cnf
[mysqld]
bind-address=0.0.0.0
port=3306
user=mysql
basedir=/usr/local/mysql
datadir=/data/mysql
socket=/tmp/mysql.sock
log-error=/data/mysql/mysql.err
pid-file=/data/mysql/mysql.pid
#character config
character_set_server=utf8mb4
symbolic-links=0
explicit_defaults_for_timestamp=true

7.初始化数据库
参数: --basedir 为mysql解压目录,–datadir 为mysql数据存放目录。(注意安装路径是否一致)

cd /usr/local/mysql/bin/
./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql/ --datadir=/data/mysql/ --user=mysql --initialize

查看初始密码

cat /data/mysql/mysql.err

密码已经生成

注:在初始化数据库时可能报缺少xx动态库的错误
如:error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory
解决方法:
第1步:查看是否安装了libaio,无返回则说明未安装,执行步骤2

rpm -qa|grep libaio

第2步:切换到root用户,使用命令yum install -y libaio进行安装

8. 加入到系统服务并启动mysql
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
service mysql start


登录mysql,一定要开启服务后才能登陆

/usr/local/mysql/bin/mysql -u root -p


登录成功后会提示你重置密码

# 修改密码,SQL语句后面的分号不能丢
ALTER USER 'root'@'localhost' IDENTIFIED BY '1234';
FLUSH PRIVILEGES;       #刷新

退出 quit
重启服务 service mysql restart
再次登陆 /usr/local/mysql/bin/mysql -u root -p //输入刚修改的密码1234敲回车键
到此mysql已经安装完成了
在用工具连接mysql时提示:
MySQL 异常: "Host 'xxx' is not allowed to connect to this MySQL server"
解决:
登录mysql,刷新规则允许外部访问
host修改成%表示,所有主机都可以通过root用户访问数据库

use mysql      #选择访问mysql库
update user set host = '%' where user = 'root';      #使root能再任何host访问
FLUSH PRIVILEGES;       #刷新


第二种:通过yum在线安装Mysql
1、找到对应linux的版本进行下载

[root@localhost ~]# cat /etc/redhat-release
CentOS Linux release 7.8.2003 (Core)


下载和安装mysql源

下载地址:https://dev.mysql.com/downloads/repo/yum/ 或 http://repo.mysql.com
#使用wget下载mysql
wget http://repo.mysql.com/mysql80-community-release-el7.rpm

如果显示wget未找到命令,则需要先安装wget:
yum -y install wget,然后再次执行上面命令, 使用上面的命令就直接下载了安装用的Yum Repository,大概25KB的样子,然后就可以直接yum安装了。

结果图

2. 第二步 安装
(1) 通过yum安装方法,会直接添加mysql环境变量和启动服务

yum -y install mysql80-community-release-el7.rpm


(2) 安装MySQL服务器:community-server

yum -y install mysql-community-server


3、第三步 启动服务并查看服务状态

systemctl start mysqld #一定要启动服务!
systemctl status mysqld #查看服务状态

 

4、第四步 获取密码
登录 MySQL 必须要通过密码,此时 root 用户的密码可以通过以下命令在日志文件中获取:

grep "password" /var/log/mysqld.log


5、第五步 登录并求改密码
(1)登录

(2) 修改密码(修改规则,可忽略)


MySQL 8.0+ 版本为以下方式:(规则修改)
set global validate_password.policy=0;
set global validate_password.length=4;

MySQL 8.0+ 版本为以下方式:(密码修改)
ALTER USER 'root'@'localhost' IDENTIFIED BY '1234';

6、第六步 授权
授权远程用户连接

# 改表法
# 选择数据库
use mysql;
# 最后授权 MySQL,允许远程用户登录访问 MySQL
update user set host = '%' where user = 'root';
# 刷新权限
flush privileges;
通过yum安装Mysql完毕!

###设置开机自启
linux设置mysql开机自启
对于使用systemd的系统,可以通过以下命令来设置MySQL开机自启:
sudo systemctl enable mysqld

###  /etc/my.cnf设置端口
port=3306

###防火墙放开指定端口

sudo firewall-cmd --permanent --zone=public --add-port=3306/tcp
sudo firewall-cmd --reload

 

标签:--,安装,mysql,usr,Linux,root,local
From: https://www.cnblogs.com/lhboke/p/18492423

相关文章

  • Linux卸载mysql
     (一)linux卸载mysql要在Linux系统中卸载MySQL,可以使用包管理器。以下是基于不同Linux发行版的卸载命令示例:对于基于Debian的系统(如Ubuntu),使用以下命令:sudoapt-getremove--purgemysql-servermysql-clientmysql-commonsudoapt-getautoremovesudoapt-getautoclean对于......
  • 基于Java+Jsp+Ssm+Mysql实现的零食商城系统功能设计与实现一
    一、前言介绍:1.1项目摘要随着电子商务的快速发展和消费者购物习惯的改变,线上购物已成为人们日常生活中不可或缺的一部分。零食作为日常生活中常见的消费品,其线上销售市场也呈现出快速增长的趋势。零食商城系统的设计与实现,旨在满足消费者对零食的多样化、个性化需求,提供......
  • 基于Java+Jsp+Ssm+Mysql实现的零食商城系统功能设计与实现二
    一、前言介绍:1.1项目摘要随着电子商务的快速发展和消费者购物习惯的改变,线上购物已成为人们日常生活中不可或缺的一部分。零食作为日常生活中常见的消费品,其线上销售市场也呈现出快速增长的趋势。零食商城系统的设计与实现,旨在满足消费者对零食的多样化、个性化需求,提供......
  • Win11安装WSL2,自定WSL2安装位置,安装到其他磁盘(非C盘)
    参考:【Linux】自定义WSL2安装位置,安装到其他磁盘(非C盘)_wsl2指定安装路径-CSDN博客超详细Windows10/Windows11子系统(WSL2)安装Ubuntu20.04(带桌面环境)_wsl安装ubuntu20.04-CSDN博客旧版WSL的手动安装步骤|MicrosoftLearn【安装笔记-20240520-Windows-自定义WSL2安装......
  • redis mysql nginx的docker-compose
    redismysqlnginx的docker-composeversion:'3'services:nginx:image:docker.m.daocloud.io/nginx:latestcontainer_name:nginxrestart:unless-stoppedenvironment:TZ:Asia/ShanghaiLANG:en_US.UTF-8volumes:#......
  • 【Linux】shell 脚本 (.sh) 编写及执行
    shell脚本shell脚本就是一些命令的集合#!/bin/bashecho"文件开头代表:该文件使用的是bash语法" 一、运行.sh文件方法一:当前文件执行.sh文件#文件必须含有x执行权限[文件赋x权限:chmodu+xhello.sh]./test.sh#文件可以没有x权限shtest.sh 方法二:绝对......
  • 人工智能编程助手MarsCode注册和安装步骤
    人工智能编程助手MarsCode注册和安装步骤字节最近推出了人工智能编程助手MarsCode,功能非常强大。在IDEA中安装和使用MarsCode的步骤如下:一、注册MarsCode账号    注册地址:https://www.marscode.cn/events/s/iSMPHK8a/二、在Idea中安装插件    点击菜单“File”——......
  • python爬虫数据存进mysql数据库
    一、安装mysql和mysqlworkbench我已经在电脑上安装了最新的mysql8.2.0,配置好环境变量,在命令提示符中以管理员的身份初始化并成功启动mysql数据库。前期因为以前的mysql没有卸载干净,导致mysql一直无法启动服务。所以一定要保证以前的mysql卸载干净才能重新安装,以前没有安装过......
  • MySQL - [20] 事务
    题记部分 一、什么是ACID(1)Atomicity原子性某个操作,要么全部执行完毕,要么全部回滚。(2)Consistency一致性数据库中的数据全都符合现实世界中的约束,则这些数据就符合一致性。比如性别的约束男or女,人民币勉之不能为负数,出生地址不能为null,参与转账的账户总余额不变;等等。(3......
  • Linux环境下Tomcat的安装与配置详细指南
    ApacheTomcat是一个广泛使用的开源JavaServlet容器和Web服务器,适用于运行JavaWeb应用程序。本指南将详细介绍如何在Linux环境中安装和配置Tomcat,包括必要的前提条件、下载安装、配置环境变量、设置为系统服务以及基本的安全配置。目录前提条件安装Java环境创建Tomcat用户......