Linux 离线安装MySQL5.7

目录

目录

一、需要准备的软件

1、mysql

2、libaio库

二、下面开始部署安装mysql

1、 创建新的用户组和新的用户,用来管理mysql,提高安全性

2、上传mysql程序包mysql-5.7.29-linux-glibc2.12-x86_64.tar.gz,修改名称

4、 给mysql用户授权能够访问/home下的mysql-5.7.29文件夹

8、添加至开机启动

10、启动mysql服务和修改mysql初始化密码

三、设置MySQL用户密码

1、设置root密码

2、use选择mysql

3、设置局域网ip均能访问

4、执行生效指令


一、需要准备的软件

1、mysql

官网下载地址:https://dev.mysql.com/downloads/mysql/

默认是显示最新版版本,点击Archives选择历史版本,我这里用到到是5.7.29版本

选择对应版本下载好后上传到服务器

2、libaio库

在安装过程中初始化数据库时,经常会报error while loading shared libraries: libaio.so.1。

这是由于缺少libaio库,下载地址:

RPM resource libaio(x86-64)

二、下面开始部署安装mysql

1、 创建新的用户组和新的用户,用来管理mysql,提高安全性
groupadd mysql

添加mysql用户 ,并制定组为mysql,/sbin/nologin意思是用户不允许登录

注意:一定要创建一个非root的用户来安装,mysql不允许以root用户运行

2、上传mysql程序包mysql-5.7.29-linux-glibc2.12-x86_64.tar.gz,修改名称
cd /home
tar -zxvf mysql-5.7.29-linux-glibc2.12-x86_64.tar.gz
mv mysql-5.7.29-linux-glibc2.12-x86_64 mysql-5.7.29

3、创建数据存储目录,日志目录和mysqld.log日志文件,并设置读写权限

创建data和log目录

mkdir /home/mysql-5.7.29/{data,logs}

创建日志文件

touch /home/mysql-5.7.29/logs/mysqld.log

设置data和log目录的读写权限,-R表示整个目录授权

chmod 777 -R {data,logs}
4、 给mysql用户授权能够访问/home下的mysql-5.7.29文件夹
chown -R mysql.mysql /home/mysql-5.7.29/

5、修改/etc/my.cnf配置文件

这样才能使下一步初始化加载数据库的路径是自己自定义选择的路径,配置文件内容如下:

[mysqld]
character_set_server=utf8
init_connect='SET NAMES utf8'
basedir=/home/mysql-5.7.29
datadir=/home/mysql-5.7.29/data
socket=/home/mysql-5.7.29/mysql.sock
# 开启ip绑定
#bind-address = 0.0.0.0
log_timestamps = SYSTEM
open_files_limit=30000
max_connections=3000
#控制其通信缓冲区的最大长度
max_allowed_packet=256M
# #设置忽略大小写(简单来说就是sql语句是否严格),默认库名表名保存为小写, 不区分大小写
lower_case_table_names = 1
#
# # 开启慢查询
#slow_query_log=on
#slow_query_log_file=/home/mysql-5.7.29/log/slow-query.log
#
[mysqld_safe]
log-error=/home/mysql-5.7.29/logs/mysqld.log
pid-file=/home/mysql-5.7.29/data/mysqld.pid
# #指定客户端连接mysql时的socket通信文件路径
[client]
socket=/home/mysql-5.7.29/mysql.sock
default-character-set=utf8

6、安装libaio库 

rpm -ivh libaio-0.3.112-1.el8.x86_64.rpm

7、初始化数据库

安装目录下执行下列命令: 

./bin/mysqld --initialize --user=mysql --basedir=/home/mysql-5.7.29/ --datadir=/home/mysql-5.7.29/data

此时会生成一个临时密码 如:CcPcnyCW%3Go【记住此临时密码,下面会用上】,每个人安装部署时产生的临时密码不一致,以初始化数据库打印的临时密码为准

注意:如果需要重新初始化配置,需要将data目录下的文件清空,否则初始化会失败 

8、添加至开机启动

在mysql5.7.29的目录下执行下列语句,把启动脚本放到开机初始化目录

cp ./support-files/mysql.server /etc/init.d/mysqld

设置开机启动,在mysql-5.7.29的目录下执行下列语句(按个人需求选择加或不加) 

chkconfig --add mysqld

​​​​ 9、修改mysqld,使用vim /etc/init.d/mysqld 命令

修改以下代码部分,具体以实际路径为准

 

10、启动mysql服务和修改mysql初始化密码
service mysqld start

启动的发现报错了,这时候查看3306端口发现端口是被正常监听的,但是停止服务又提示pid不存在,这时候先kill一下,然后再次启动发现OK了,这个啥情况我也不太清楚

./bin/mysql -uroot -p -S /home/mysql-5.7.29/mysql.sock

mysql.sock在mysql启动后会自动生成,生成的路径就是/etc/my.cnf配置的路径,root密码为:CcPcnyCW%3Go

三、设置MySQL用户密码

1、设置root密码
alter user root@localhost identified by '123456';

root@localhost是对应MySQL的用户,123456是需要修改的密码。

2、use选择mysql
use mysql
3、设置局域网ip均能访问
update user set user.Host='%' where user.User='root';

设置用户root的访问地址不受限制

4、执行生效指令
flush privileges;

这里建议设置完成后不要马上退出mysql,先用可视化工具连接测试一下,否则可能连接不上,但是用户名和密码又没错,如果没退出,你还能再次输入通过指令修改root的密码,所以保证连接成功后,在输入exit进行退出。

最后通过可视化工具连接测试成功,自此mysql5.7.29在Linux环境上安装部署完成~

  • 12
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Linux 离线安装 MySQL 5.7 的步骤如下: 1. 下载 MySQL 5.7 的安装包,并将其保存在本地。 2. 使用 tar 命令解压安装包:tar -xvf mysql-5.7.*.tar.gz 3. 进入解压出的目录:cd mysql-5.7.* 4. 使用编译安装命令:./configure --prefix=/usr/local/mysql 5. 编译并安装:make && make install 6. 创建数据库目录:mkdir /usr/local/mysql/data 7. 启动 MySQL 服务:/usr/local/mysql/bin/mysqld --initialize-insecure --user=mysql 8. 启动 MySQL:/usr/local/mysql/bin/mysqld_safe & 注意:以上步骤仅供参考,具体过程可能会有所不同。请仔细阅读官方文档以获得最准确的信息。 ### 回答2: 要在Linux离线安装MySQL 5.7,您需要下载适用于您的操作系统的MySQL 5.7二进制安装包。您可以从MySQL官方网站或官方镜像站点下载该安装包。 1. 下载二进制安装包:通过浏览器或使用wget命令从MySQL官方网站下载适用于您的Linux发行版的MySQL 5.7二进制安装包。确保下载适合您系统的正确版本。 2. 上传安装包:将下载的安装包上传到您的Linux系统中的目录,例如/opt目录。 3. 解压安装包:使用以下命令解压下载的安装包: ``` sudo tar xvf mysql-VERSION-OS.tar.gz ``` 请将"VERSION"和"OS"替换为您下载的实际文件名。 4. 创建MySQL数据目录:在您系统上选择一个合适的位置创建MySQL数据目录。例如,使用以下命令创建一个名为mysql_data的目录: ``` sudo mkdir /var/lib/mysql_data ``` 5. 初始化数据库:使用以下命令初始化MySQL数据库: ``` sudo bin/mysqld --initialize --basedir=/opt/mysql --datadir=/var/lib/mysql_data ``` 这将生成一个临时密码。请记下该密码,您稍后需要使用它登录到MySQL。 6. 启动MySQL服务器:使用以下命令启动MySQL服务器: ``` sudo bin/mysqld_safe --skip-grant-tables --skip-networking & ``` 7. 修改root密码:使用以下命令登录到MySQL并修改root用户的密码: ``` sudo bin/mysql -uroot -p ALTER USER 'root'@'localhost' IDENTIFIED BY 'your_new_password'; FLUSH PRIVILEGES; ``` 请将"your_new_password"替换为您要设置的新密码。 8. 配置MySQL服务:创建MySQL的systemd服务配置文件: ``` sudo nano /etc/systemd/system/mysql.service ``` 在文件中添加以下内容: ``` [Unit] Description=MySQL Server After=network.target [Service] ExecStart=/opt/mysql/bin/mysqld --defaults-file=/etc/my.cnf --basedir=/opt/mysql --datadir=/var/lib/mysql_data User=mysql Group=mysql [Install] WantedBy=multi-user.target ``` 保存并关闭文件。 9. 启动MySQL服务:使用以下命令启动MySQL服务: ``` sudo systemctl start mysql ``` 现在,您应该可以使用新的root密码访问MySQL服务器了。 这是一个基本的步骤指南,帮助您离线安装MySQL 5.7。请注意,具体操作可能根据您的系统和要求略有不同。请根据您的实际情况进行相应的调整。 ### 回答3: 要在Linux离线安装MySQL 5.7,您可以按照以下步骤进行操作: 1. 首先,从MySQL官方网站上下载适用于Linux的MySQL 5.7安装包。确保选择适合您Linux发行版本和体系结构的安装包。 2.在离线环境中,将安装包传输到Linux服务器上。您可以使用U盘、网络传输或其他适当的方式进行传输。 3. 在Linux服务器上,解压安装包。您可以使用以下命令:tar xvfz mysql-5.7.**.tar.gz(**表示具体版本号)。 4. 进入解压后的目录:cd mysql-5.7.**。 5. 创建MySQL的安装目录。您可以使用以下命令:sudo mkdir /usr/local/mysql。 6. 将解压后的文件复制到安装目录中:sudo cp -R * /usr/local/mysql。 7. 接下来,为MySQL创建一个用户组和用户。使用以下命令创建用户组:sudo groupadd mysql。使用以下命令创建用户并将其添加到用户组中:sudo useradd -r -g mysql -s /bin/false mysql。 8. 为安装目录中的文件和目录设置正确的权限。使用以下命令:sudo chown -R mysql:mysql /usr/local/mysql。 9. 进入MySQL的安装目录:cd /usr/local/mysql。 10. 初始化MySQL数据库。使用以下命令:sudo bin/mysqld --initialize --user=mysql。 11. 启动MySQL服务器:sudo bin/mysqld_safe --user=mysql &。 12. 检查MySQL服务器是否正在运行:sudo bin/mysqladmin -u root -p status。 13. 设置root用户的密码。使用以下命令:sudo bin/mysql_secure_installation。 14. 遵循提示设置root用户的密码,并进行其他相关安全设置。 以上步骤将在Linux离线环境中安装MySQL 5.7,并将其配置为可以正常运行。这样您就可以使用MySQL数据库来存储和管理您的数据了。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值