linux 7.6安装mysql_Linux(CentOS 7.6) 环境安装MySQL 5.7

一、介绍

网络上安装部署mysql的资料非常多,但良莠不齐,按其部署项目可能不能正常工作。这里根据官方网站的参考手册对操作步骤和相关选项进行总结。本文主要针对解压mysql-VERSION.tar.gz压缩包进行安装(官方说法为标准源分发版压缩文件)

二、具体操作步骤

1.创建用户名和用户组为mysql

2.获取mysql-5.7.31-linux-glibc2.12-x86_64.tar.gz压缩包,解压缩,并将解压后的目录重命名为mysql

3.将解压后目录移动到/usr/local下,修改权限和属组,切换用户为mysql

4.初始化数据目录

进入/usr/local/mysql/bin目录,执行如下命令

1 ./mysqld --defaults-file=/etc/my.cnf --initialize --user=mysql

注:

defaults-file指定了配置文件目录,如果未指定则按照如下优先级读取(下方优先于上方)

文件名

属性

/etc/my.cnf

全局选项

/etc/mysql/my.cnf

全局选项

SYSCONFDIR/my.cnf

全局选项

$MYSQL_HOME/my.cnf

服务器特定的选项(仅服务器)

defaults-extra-file

用指定的文件--defaults-extra-file(如果有)

~/.my.cnf

用户特定的选项

~/.mylogin.cnf

用户特定的登录路径选项(仅限客户端)

initialize:“默认安全”安装(即包括生成随机初始的root密码)。在这种情况下,密码被标记为已过期,首次登陆必须修改成一个新密码。

user:数据库目录和文件由mysql登录帐户拥有很重要,以便服务器在以后运行时对其具有读写访问权限

my.cnf:配置文件,以下是官方给出的全局选项的配置文件供参考,主要可以配置端口号,数据文件目录,数据库字符集等信息

[client]

port=13306socket=/tmp/mysql.sock

[mysqld]

port=13306socket=/tmp/mysql.sock

key_buffer_size=16M

max_allowed_packet=8M

basedir=/usr/local/mysql

datadir=/data

[mysqldump]

quick

1 [mysql@hmy bin]$ ./mysqld --defaults-file=/etc/my.cnf --initialize --user=mysql2 2020-11-23T08:04:29.164489Z 0 [Warning] Changed limits: max_open_files: 1024 (requested 5000)3 2020-11-23T08:04:29.165173Z 0 [Warning] Changed limits: table_open_cache: 431 (requested 2000)4 2020-11-23T08:04:29.165760Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for moredetails).5 2020-11-23T08:04:30.811651Z 0 [Warning] InnoDB: New log files created, LSN=45790

6 2020-11-23T08:04:31.078371Z 0[Warning] InnoDB: Creating foreign key constraint system tables.7 2020-11-23T08:04:31.166566Z 0 [Warning] No existing UUID has been found, so we assume that this is the first time that this server has been started. Generating a new UUID: 841ffa64-2d62-11eb-a933-000c29a79d5e.8 2020-11-23T08:04:31.169370Z 0 [Warning] Gtid table is not ready to be used. Table 'mysql.gtid_executed'cannot be opened.9 2020-11-23T08:04:31.947707Z 0[Warning] CA certificate ca.pem is self signed.10 2020-11-23T08:04:32.413751Z 1 [Note] A temporary password is generated for root@localhost: G(Rk?o.f_6dk

执行后可以看出还可以增加Gtid等其他配置信息。记录临时密码。

5.启动服务器

1 [mysql@hmy bin]$ ./mysqld_safe --defaults-file=/etc/my.cnf --user=mysql &

2 [1] 7533

3 [mysql@hmy bin]$ 2020-11-23T08:06:35.338854Z mysqld_safe Logging to '/data/hmy.err'.4 2020-11-23T08:06:35.383875Z mysqld_safe Starting mysqld daemon with databases from /data5 ^C6 [mysql@hmy bin]$ netstat -tnlp|grep 13306

7 (Not all processes could be identified, non-owned process info

8 will not be shown, you would have to be root to see it all.)9 tcp6 0 0 :::13306 :::* LISTEN 7690/mysqld

可以看出端口号,证明服务已经启动成功。

6. 首次登陆服务器并修改密码

1 [mysql@hmy bin]$ ./mysql -u root -p2 Enter password:3 ERROR 1045 (28000): Access denied for user 'root'@'localhost'(using password: YES)4 [mysql@hmy bin]$ ./mysql -u root -p5 Enter password:6 Welcome to the MySQL monitor. Commands end with ; or \g.7 Your MySQL connection id is 3

8 Server version: 5.7.31

9

10 Copyright (c) 2000, 2020, Oracle and/or its affiliates. All rights reserved.11

12 Oracle is a registered trademark of Oracle Corporation and/or its13 affiliates. Other names may be trademarks of their respective14 owners.15

16 Type 'help;' or '\h' for help. Type '\c' to clearthe current input statement.17

18 mysql> set password for root@localhost = password('271013378');19 Query OK, 0 rows affected, 1 warning (0.00sec)20

21 mysql>flush privileges;22 Query OK, 0 rows affected (0.00 sec)

7.开放远程连接

1 mysql>use mysql;2 Reading table information forcompletion of table and column names3 You can turn off this feature to get a quicker startup with -A4

5 Database changed6 mysql> update user set user.Host='%' where user.User='root';7 Query OK, 1 row affected (0.00sec)8 Rows matched: 1 Changed: 1 Warnings: 0

9

10 mysql>flush privileges;11 Query OK, 0 rows affected (0.00 sec)

尝试远程连接数据库失败,检查发现防火墙未关闭,执行:

1 systemctl stop firewalld

后可以远程连接数据库

fe3d9af0282460d3bb6027427bae216a.png

三、关闭数据库

由于用mysql_safe启动的数据库的安全机制当前进程中断后会重启一个进程,所以不能通过kill后台进程的方式关闭数据库

可以使用如下方式关闭数据库(需要管理员密码)

[mysql@hmy bin]$ ./mysqladmin shutdown -u root -p

Enter password:2020-11-23T08:20:29.650119Z mysqld_safe mysqld from pid file /data/hmy.pid ended

[1]+ Done ./mysqld_safe --defaults-file=/etc/my.cnf --user=mysql

四、没有详细说明的内容

由于本文仅介绍基本流程,所以未在启动选项、配置参数等方面进行赘述。部署生产环境的MySQL需要进行的字符集、最大打开文件限制等设定可以参考官方文档和其他参考资料。

参考文档:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 以下是CentOS 7.6安装MySQL 5.7的步骤: 1. 首先,您需要在CentOS 7.6上安装MySQL 5.7的存储库。您可以使用以下命令下载并安装存储库: wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm sudo rpm -ivh mysql57-community-release-el7-11.noarch.rpm 2. 安装MySQL 5.7: sudo yum install mysql-server 3. 启动MySQL服务: sudo systemctl start mysqld 4. 运行以下命令以确保MySQL服务已启动: sudo systemctl status mysqld 5. 运行以下命令以设置MySQL服务在系统启动时自动启动: sudo systemctl enable mysqld 6. 运行以下命令以保护MySQL安装: sudo mysql_secure_installation 7. 按照提示设置MySQL root用户的密码和其他安全选项。 现在,您已经成功安装MySQL 5.7。 ### 回答2: CentOS7.6是一种广泛使用的Linux服务器操作系统,而MySQL是最受欢迎的关系型数据库之一。CentOS7.6的用户希望在他们的服务器上安装MySQL,这样他们就可以管理和存储他们的数据。这里是一个简单的步骤,介绍如何安装MySQL5.7在CentOS7.6上。 步骤1:安装MySQL5.7的源 首先,在命令终端上执行下面的命令安装MySQL5.7的源: `yum install http://repo.mysql.com/mysql57-community-release-el7-11.noarch.rpm` 此命令将下载并安装MySQL源到CentOS7.6服务器上。安装后,确认MySQL源已添加到yum源列表: `yum repolist enabled | grep "mysql.*-community.*"` 步骤2:安装MySQL5.7 执行下面的命令安装MySQL5.7: `yum install mysql-community-server` MySQL将在CentOS 7.6服务器上安装完成,此时可以启动MySQL: `systemctl start mysqld` 步骤3:启用MySQL服务 为了让MySQL始终在系统启动时启动,需要执行下面的命令启用MySQL服务: `systemctl enable mysqld` 步骤4:设置MySQL密码 MySQL安装完后,必须设置root密码,否则无法登录MySQL: `/usr/bin/mysql_secure_installation` 该命令将引导您完成MySQL密码的设置,还会要求您对MySQL安全性进行其他设置。 步骤5:连接MySQL 最后一步是连接到MySQL服务器。执行下面的命令: `mysql -u root -p` 并输入您在步骤4中为root用户设置的密码。如果一切设置正确,您现在就可以访问MySQL服务器了。 以上就是在CentOS7.6上安装MySQL5.7的步骤。需要注意的是,如果你已经安装了旧版本的MySQL,可能需要卸载它。另外,这里列出的步骤不一定是唯一正确的方法,您可以根据自己的情况进行改变。 ### 回答3: CentOS 7.6 是一款非常流行的 Linux 操作系统,MySQL 5.7 是最受欢迎的关系型数据库管理系统之一。在本文中,我们将使用 CentOS 7.6 系统来安装 MySQL 5.7 ,并对安装过程进行详细说明。 前提准备: 1. 请确保您具有 root 权限 2. 确保您使用的是最新版本的CentOS 7.6 操作系统 3. 确保您的系统已与 Internet 连接 步骤1:安装MySQL服务器 1. 打开终端并登录到root用户 2. 执行以下命令以确保您具有最新版本的yum包管理器: sudo yum update 3. 执行以下命令以安装MySQL服务器: sudo yum install mysql-server 4. 执行以下命令以启动MySQL服务器: sudo systemctl start mysqld 5. 执行以下命令以将MySQL服务器添加到开机启动项: sudo systemctl enable mysqld 步骤2:安装MySQL客户端 1. 执行以下命令以安装MySQL客户端: sudo yum install mysql 步骤3:设置MySQL根密码 在MySQL系统中,根用户是最高权限的用户,因此我们需要为其设置密码以保护其安全性。请务必选择强密码。 1. 执行以下命令以设置root用户的密码: sudo mysql_secure_installation 2. 您将被提示输入当前根密码,但是在首次使用MySQL时,此处应该为空。选择“Enter”键。 3. 您将被提示设置新的root密码。输入并确认密码后,选择“y”键。 4. 您将被提示删除匿名用户。选择“y”键。 5. 您将被提示禁用root用户的远程登录。选择“y”键。 6. 您将被提示删除测试数据库。选择“y”键。 7. 您将被提示重新加载特权表,以便更改生效。选择“y”键。 步骤4:连接到MySQL服务器 1. 打开终端并运行以下命令以连接到MySQL服务器: mysql -u root -p 2. 输入您设置的新根密码以登录到MySQL服务器。 步骤5:设置新用户和表 1. 运行以下命令以创建新MySQL用户: CREATE USER 'newuser'@'localhost' IDENTIFIED BY 'password'; 请将 'newuser' 替换为您要创建的用户名,并将 'password' 替换为您要为其设置的密码。 2. 运行以下命令以为该新用户授予权限: GRANT ALL PRIVILEGES ON * . * TO 'newuser'@'localhost'; 3. 运行以下命令以使更改立即生效: FLUSH PRIVILEGES; 4. 运行以下命令以创建新表: CREATE DATABASE newdatabase; 5. 运行以下命令以将新表分配给新用户: GRANT ALL PRIVILEGES ON newdatabase.* TO 'newuser'@'localhost'; 6. 运行以下命令以退出MySQL服务器并关闭终端: quit 到此为止,您已经在 CentOS 7.6 中安装MySQL 5.7。如果您出于任何原因需要安装其他版本的MySQL,请参考MySQL文档以获得指导。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值