首页 > 数据库 >Linux 安装MySQL

Linux 安装MySQL

时间:2024-09-11 17:51:44浏览次数:3  
标签:-- local Linux 端口 usr mysql MySQL 安装

前言:

根据对应的系统位数,选择需要下载的文件。

查看系统位数

 getconf LONG_BIT

Linux 安装MySQL_防火墙

一、下载MySQL

1.手动去官网下载

官网地址:MySQL :: Download MySQL Community Server (Archived Versions)

Linux 安装MySQL_防火墙_02

2.Linux命令下载

通过Linux命令下载:wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-对应版本,位数.tar.gz

#修改为自己需要版本
wget https://dev.mysql.com/get/Downloads/mysql-5.7.38-linux-glibc2.12-x86_64.tar.gz

推荐命令下载 如果使用命令下载可以跳过第二步的第一步

Linux 安装MySQL_mysql_03

二、上传MySQL压缩包到Linux并解压

1.上传到/usr/local目录

2.解压

tar -xvf mysql-5.7.38-linux-glibc2.12-x86_64.tar.gz 

Linux 安装MySQL_防火墙_04

3.修改文件名

mv mysql-5.7.38-linux-glibc2.12-x86_64/ mysql

Linux 安装MySQL_防火墙_05

4.删除压缩包

也可留着安装成功后删

rm -f mysql-5.7.38-linux-glibc2.12-x86_64.tar.gz 

Linux 安装MySQL_mysql_06

三、创建MySQL用户组、组名

# 创建MySQL用户组
groupadd mysql
# 添加MySQL用户并添加到MySQL用户组
useradd -r -g mysql mysql

Linux 安装MySQL_MySQL安装_07

四、创建数据目录并开启权限

1.在/usr/local/mysql目录下创建data文件夹

mkdir data 

Linux 安装MySQL_MySQL安装_08

2.开启权限

chown -R mysql:mysql /usr/local/mysql/

Linux 安装MySQL_mysql_09

五、配置my.cnf文件

1.编辑my.cnf

vim /etc/my.cnf

2.修改内容,原来的直接删除把下面复制进去

复制的时候看清安装目录和数据存放目录是否和你的一致

[mysqld]
# 设置3306端口
port=3306
# 设置mysql的安装目录
basedir=/usr/local/mysql
# 设置mysql数据库的数据的存放目录
datadir=/usr/local/mysql/data
# 允许最大连接数
max_connections=200
# 允许连接失败的次数。
max_connect_errors=10
# 服务端使用的字符集默认为utf8mb4
character-set-server=utf8mb4
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 默认使用“mysql_native_password”插件认证
#mysql_native_password
default_authentication_plugin=mysql_native_password
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8mb4
[client]
# 设置mysql客户端连接服务端时默认使用的端口
port=3306
default-character-set=utf8mb4

六、初始化MySQL

执行命令MySQL目标下bin目录下任选一个都行

1.执行命令 /usr/local/mysql目录下

./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

2.执行命令  /usr/local/mysql/bin 目录下

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

命令说明:

–defaults-file:默认配置文件地址
–datadir:是刚刚创建的data数据目录(不要闭着眼复制!你的目录可能跟我不一样!)
–basedir:是MySQL安装目录(你的目录名字可能跟我不一样,我的是mysql,注意注意!!!)
–user:刚刚创建的mysql用户

Linux 安装MySQL_linux_10

红款中的密码一会登录(./mysql -u root -p )的时候要用到

3.初始化失败处理

  • 如初始化报错如下所示

Linux 安装MySQL_防火墙_11

解决方案:  

yum -y install numactl

Linux 安装MySQL_linux_12

  • 如初始化报错如下所示

Linux 安装MySQL_linux_13

解决方案如下

sudo yum update
sudo yum install libaio

Linux 安装MySQL_防火墙_14

Linux 安装MySQL_MySQL安装_15

4.将权限改回保留data

权限不改也行

chown -R root .
chown -R mysql data/

七、启动MySQL修改初始密码、授权远程连接

1.启动服务

/usr/local/mysql/support-files/mysql.server start

Linux 安装MySQL_防火墙_16

2.修改初始密码

# 切换目录
cd /usr/local/mysql/bin
# 登录命令
./mysql -u root -p
#修改密码
set password for root@localhost=password('我的密码');
#刷新权限
FLUSH PRIVILEGES;

登录数据库时需要输入初始密码,即在步骤六中初始化完成后,显示的密码

Linux 安装MySQL_mysql_17

Linux 安装MySQL_mysql_18

#可以不用执行,当时为测试设置了个简单的
SET PASSWORD = PASSWORD('密码');   
#执行下面命令也可以设置密码:二选其一
# 设置密码
SET PASSWORD = PASSWORD('ok');
# 设置用户的访问密码用不过期
ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
#刷新权限
FLUSH PRIVILEGES;

3.授权远程连接

在登录MySQL的状态授权

如果navicate连接报1130等就是没有授权远程连接

# 访问mysql库
use mysql
# 修改root用户能在任何host访问(授权远程连接)
update user set host = '%' where user = 'root';
# 刷新
FLUSH PRIVILEGES;

退出mysql

exit

Linux 安装MySQL_MySQL安装_19

这里就可以用连接工具测试链接了!

八、开启自启

1.依次执行下面命令进行软连接

ln -s /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql 
 
ln -s /usr/local/mysql/bin/mysql /usr/bin/mysql
 
service mysql restart

Linux 安装MySQL_mysql_20

2.赋予权限、添加服务、显示服务列表

#赋予权限
chmod +x /etc/init.d/mysql
 
#添加服务
chkconfig --add mysql
 
#显示服务列表
chkconfig --list

Linux 安装MySQL_防火墙_21

3.开启失败

如上图所示,如果是2,3,4,5 都是开启的话则成功。
如果不是,可运行以下命令开启:

chkconfig --level 2345 mysql on

4.重启服务器

reboot

5.查看MySQL进程是否启动

ps -aux | grep mysql

九、Navicat 连接

连接时出现 2002错误代码,可能是防火墙没有开放3306端口。

也可以将防火墙关闭,不建议这样

# 开启端口3306
firewall-cmd --zone=public --add-port=3306/tcp --permanent
# 重启防火墙
firewall-cmd --reload
# 查看已经开放的端口
firewall-cmd --list-ports

Linux 安装MySQL_防火墙_22

十、防火墙命令

1.查看防火墙状态
查看防火墙状态 systemctl status firewalld
开启防火墙 systemctl start firewalld  
关闭防火墙 systemctl stop firewalld
开启防火墙 service firewalld start 
         若遇到无法开启
         先用:systemctl unmask firewalld.service 
         然后:systemctl start firewalld.service
 
2.查看对外开放的端口状态
         查询已开放的端口 netstat  -ntulp | grep 端口号:可以具体查看某一个端口号
         查询指定端口是否已开 firewall-cmd --query-port=666/tcp
           提示 yes,表示开启;no表示未开启。
 
3.对外开发端口
       查看想开的端口是否已开:firewall-cmd --query-port=6379/tcp
       添加指定需要开放的端口:firewall-cmd --add-port=123/tcp --permanent
       重载入添加的端口:firewall-cmd --reload
       查询指定端口是否开启成功:firewall-cmd --query-port=123/tcp
       移除指定端口:firewall-cmd --permanent --remove-port=123/tcp


标签:--,local,Linux,端口,usr,mysql,MySQL,安装
From: https://blog.51cto.com/u_16421711/11982676

相关文章

  • BUG: pymysql executemany不支持insert on duplicate key update
    pymysql的executemany()方法支持传入单个SQL和一个sequenceofrecords(sequenceormapping)来同时写入多条数据。例如:sql="insertintot(c1,c2)values(%s,%s)"args=[(1,2),(3,4)]cursor.executemany(sql,args)#Ifargsisalistortuple,%scanbeusedas......
  • MySQL常见面试题
    使⽤索引⼀定可以提升效率吗?索引就是排好序的,帮助我们进⾏快速查找的数据结构.简单来讲,索引就是⼀种将数据库中的记录按照特殊形式存储的数据结构。通过索引,能够显著地提⾼数据查询的效率,从⽽提升服务器的性能。索引的优势与劣势优点提⾼数据检索的效率,降低数据库的IO成本......
  • 博图Tia Portal下载:附安装包+详细安装步骤
    如大家所了解的,TIA博途是全集成自动化软件TIAportal的简称。它是业内首个采用统一的工程组态和软件项目环境的自动化软件,几乎适用于所有自动化任务。借助该全新的工程技术软件平台,用户能够快速、直观地开发和调试自动化系统。它提供了一整套工具,用于进行自动化系统的设计、调......
  • Stable Diffusion4.9一键安装教程SD(AI绘画软件)
    **无套路!**文末提供下载方式StableDiffusion是一款革命性的AI绘画生成工具,它通过潜在空间扩散模型,将图像生成过程转化为一个逐步去噪的“扩散”过程。与传统的高维图像空间操作不同,StableDiffusion首先将图像压缩到低维的潜在空间中,然后通过应用扩散过程来生成新的......
  • 安装应用教程的科普
    正常来说我们拿到的电脑都是windows的系统,对于一线品牌比如联想,惠普都有自带的应用商店,很方便,不用动手这么多但是,一般我们的电脑都是纯净版,不带应用市场,就一个微软应用商店,这个微软应用商店网络时好时不好的,也不能改安装位置跟创建快捷键,这时候就用我们自带的Edge浏览器打开浏览......
  • 7. 安装软件包
    原生的openwrt里没有安装一些额外用到的软件包(即插件),下面记录一下怎么在imx8平台的openwrt上安装软件包,并且在luci界面的服务选项里使用原生luci界面没有服务选项1.openwrt换软件源 /etc/opkg/distfeeds.conf#原始源#src/gzopenwrt_corehttps://downloads.openwr......
  • 软件测试学习笔记丨Docker 安装、管理、搭建服务
    本文转自测试人社区,原文链接:https://ceshiren.com/t/topic/32192容器(Docker)技术的价值保证环境一致性,只要使用相同镜像部署就可以保证一致性。轻量级虚拟化访问,运行更快,资源更小。同时也可以荣期间的隔离性。封装部署的负载型,云原生与微服务的首选技术方案。未来测试人员必学的技术......
  • 云服务器有必要安装clamav吗
    ClamAV是一个开源的病毒扫描工具,主要用于检测恶意软件、病毒、特洛伊木马和其他恶意威胁。对于云服务器来说,是否安装ClamAV取决于多种因素:以下情况建议安装ClamAV:数据安全性要求高:如果你的服务器上存储或处理的数据对安全性有较高要求,安装ClamAV可以帮助你定期扫描和检测潜在的恶意......
  • AE2024最新版下载全攻略,不限速安装包助你设计更出色!
    #AE2024最新版下载全攻略,不限速安装包助你设计更出色!AdobeAfterEffects(简称AE)是一款强大的视频特效和动态图形设计软件,广泛应用于电影、电视、广告和网络视频制作等领域。随着技术的不断进步,Adobe公司推出了AE2024最新版,带来了更多创新功能和性能优化,帮助设计师们创作出更加出色......
  • AE2024安装不求人,详细图文教程带你轻松搞定,设计师加油包!
    #AE2024安装不求人,详细图文教程带你轻松搞定,设计师加油包!AdobeAfterEffects(简称AE)是一款强大的视觉效果和动态图形设计软件,广泛应用于电影、电视、广告等领域。随着AE2024的发布,许多设计师都迫不及待地想要体验新版本带来的新功能和改进。本文将为你提供一份详细的AE2024安装教......