linux 无网络安装mysql

下载地址

通过网盘分享的文件:mysql-5.7.33-linux-glibc2.12-x86_64.tar.gz

链接: https://pan.baidu.com/s/1qm48pNfGYMqBGfoqT3hxPw?pwd=0012 提取码: 0012

安装

解压

tar -zxvf mysql-5.7.33-linux-glibc2.12-x86_64.tar.gz

mv /usr/mysql-5.7.33-linux-glibc2.12-x86_64/ /usr/local/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 组

创建数据目录并赋予权限

mkdir -p /home/mysql #数据目录

chown mysql:mysql -R /home/mysql

修改配置文件

vi /etc/my.cnf

mysqld

port = 3306

lower_case_table_names = 1

sql_mode=NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

basedir=/usr/local/mysql

datadir=/home/mysql

socket=/tmp/mysql.sock

log-error=/home/mysql/mysql.err

pid-file=/home/mysql/mysql.pid

#character config

character_set_server=utf8

symbolic-links=0

explicit_defaults_for_timestamp=true

初始化数据库

cd /usr/local/mysql/bin/

#查看初始密码,一般最后一行root@locallhost:后面的就是密码

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

#查看初始密码,一般最后一行root@locallhost:后面的就是密码

cat /home/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进行安装

入到系统服务并启动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

./mysql -u root -p

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

修改密码,SQL语句后面的分号不能丢

ALTER USER 'root'@'localhost' IDENTIFIED BY 'uacsapp'; #uacsapp 是初始化的密码

FLUSH PRIVILEGES;       #刷新

退出 quit

重启服务 service mysql restart

再次登陆 /usr/local/mysql/bin/mysql -u root -p //输入刚修改的密码1234敲回车键

到此mysql已经安装完成了

开通外部访问

use mysql      #选择访问mysql库

update user set host = '%' where user = 'root';      #使root能再任何host访问

FLUSH PRIVILEGES;       #刷新

防火墙开通 3306端口

firewall-cmd --add-port=3306/tcp --permanent

firewall-cmd --reload

设置自启动

#copy并重命名

cp /usr/local/mysql/support-files/mysql.server /etc/rc.d/init.d/mysql

#复制成功后我们需要给赋予权限

chmod +x /etc/init.d/mysql

#添加为服务:

chkconfig --add mysql

#查看服务列表

chkconfig --list

#看到mysql服务的3、4、5状态为开或者为 on 则表示成功。 如果是 关或者 off 则执行一下:

chkconfig --level 345 mysqld on

#重启计算机:

reboot

相关推荐
Madison-No723 分钟前
搭建项目测试环境
linux·运维·服务器·python
吴声子夜歌1 小时前
Shell编程实例——编写安全的shell脚本(二)
linux·运维·shell
悠悠121382 小时前
微服务通信别只看性能:REST 与 gRPC 的 6 个选型判断和一次 502 故障复盘
运维·服务器
xiaoye-duck3 小时前
《Linux 网络编程》深入理解 IP 协议(二):网段划分、私有 IP 与 NAT 地址转换
linux·网络·ip
zx_741484814 小时前
【Linux入门】Shell 函数、正则表达式与文本处理:cut 与 awk
linux·运维·正则表达式
Zenova EdgeOS4 小时前
Linux dmesg 工业边缘实战:内核日志过滤、持久化与故障定位
linux·运维·边缘计算·工业边缘·dmesg·内核日志
金士顿4 小时前
System.Text.Json Source Generator 深度解析:为什么 Native AOT 不喜欢反射
linux·asp.net core·arm64·net·native aot
wdfk_prog5 小时前
ROS教程08:从 TransportTCP::connect() 追到 TCPROS Connection Header、序列化与 Socket 数据传输
运维·缓存·docker·容器·ros
做运维的阿瑞5 小时前
Python 标准库汇总:分类速览与常用模块清单
linux·运维·python
百万蹄蹄向前冲6 小时前
密码都对Node.js却连不上Linux数据库
linux·mysql