资讯专栏INFORMATION COLUMN

linux安装mysql

Tecode / 2202人阅读

摘要:设置的密码必须符合长度,且必须含有数字,小写或大写字母,特殊字符。可以看到只允许访问更新用户表强制刷新权限再次查看用户表。查看端口监听状态,修改配置文件这里可以看到表示所有均可访问。

1.准备

① 检测系统是否自带安装 MySQL

rpm -qa | grep mysql

如有,类似mysql-libs-5.1.52-1.el6_0.1.x86_64那可以选择进行卸载:

rpm -e mysql-libs-5.1.52-1.el6_0.1.x86_64  // 普通删除模式
rpm -e --nodeps mysql-libs-5.1.52-1.el6_0.1.x86_64  // 强力删除模式,如果使用上面命令删除时,提示有依赖的其它文件,则用该命令可以对其进行强力删除

② 检查否存在 mariadb 数据库,如有,卸载之

rpm -qa | grep mariadb

如有,类似

mariadb-libs-5.5.56-2.el7.x86_64

则卸载

rpm -e --nodeps mariadb-libs-5.5.56-2.el7.x86_64

2.安装yum源

# 下载
[root@VM_0_6_centos ~]# wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm

# 安装mysql的yum源
[root@VM_0_6_centos ~]# sudo yum install mysql57-community-release-el7-11.noarch.rpm

检查是否安装成功

[root@VM_0_6_centos ~]# yum repolist enabled | grep "mysql.*-community.*"
mysql-connectors-community/x86_64    MySQL Connectors Community              131
mysql-tools-community/x86_64         MySQL Tools Community                   100
mysql57-community/x86_64             MySQL 5.7 Community Server              384

3.安装MySQL

使用yum install命令安装。注意:服务器在国外,下载会很慢,耐心等待即可。

[root@VM_0_6_centos ~]# sudo yum install -y mysql-community-server
# 安装完成
Installed:
  mysql-community-server.x86_64 0:5.7.28-1.el7                                                                                          

Dependency Installed:
  mysql-community-client.x86_64 0:5.7.28-1.el7 mysql-community-common.x86_64 0:5.7.28-1.el7 mysql-community-libs.x86_64 0:5.7.28-1.el7
  numactl-libs.x86_64 0:2.0.12-3.el7_7.1      

Complete!

4.启动MySQL服务

因为只有启动了MySQL服务,才会产生/var/log/mysqld.log文件,初始root密码在这个文件目录下

启动mysql服务(在CentOS7下,启动和关闭服务的命令是systemctl start|stop)

# 现在我们来配置mysql的启动,个人比较推荐使用服务的方式启动(centos7特有)。
# 这样就把mysqld这个服务添加到系统中了,我们可以用service进行启动了
[root@VM_0_6_centos ~]# systemctl start mysqld.service

启动,停止,重启的命令如下

# 使用 service 启动:service mysqld start
[root@VM_0_6_centos ~]# service mysqld stop
# 查看mysql状态
[root@VM_0_6_centos ~]# systemctl status mysqld
● mysqld.service - MySQL Server
   Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
   Active: active (running) since Thu 2019-12-19 18:29:51 CST; 5s ago
     Docs: man:mysqld(8)
           http://dev.mysql.com/doc/refman/en/using-systemd.html
  Process: 2514 ExecStart=/usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid $MYSQLD_OPTS (code=exited status=0/SUCCESS)
  Process: 2497 ExecStartPre=/usr/bin/mysqld_pre_systemd (code=exited status=0/SUCCESS)
 Main PID: 2517 (mysqld)
   CGroup: /system.slice/mysqld.service
           └─2517 /usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid

Dec 19 18:29:51 VM_0_6_centos systemd[1]: Starting MySQL Server...
Dec 19 18:29:51 VM_0_6_centos systemd[1]: Started MySQL Server.
# 使用 service 关闭:service mysqld stop
[root@VM_0_6_centos ~]# service mysqld stop
# 重启
[root@VM_0_6_centos ~]# service mysqld restart
[root@VM_0_6_centos ~]# sudo systemctl start mysqld

查看mysql服务的启动状态

[root@VM_0_6_centos ~]# systemctl status mysqld
# 如下图显示则表示已经开启
[root@VM_0_6_centos ~]# systemctl status mysqld
● mysqld.service - MySQL Server
   Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
   Active: active (running) since Thu 2019-12-19 17:29:42 CST; 25s ago
     Docs: man:mysqld(8)
           http://dev.mysql.com/doc/refman/en/using-systemd.html
  Process: 26171 ExecStart=/usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid $MYSQLD_OPTS (code=exited status=0/SUCCESS)
  Process: 26108 ExecStartPre=/usr/bin/mysqld_pre_systemd (code=exited status=0/SUCCESS)
 Main PID: 26174 (mysqld)
   CGroup: /system.slice/mysqld.service

5.查看mysql的初始密码

# S&3ytX**5rA8为默认密码,修改之
[root@VM_0_6_centos ~]# sudo cat /var/log/mysqld.log | grep password
2019-12-19T09:29:37.272653Z 1 [Note] A temporary password is generated for root@localhost: S&3ytX**5rA8

6. 登录mysql,修改密码

# 登录mysql
[root@VM_0_6_centos ~]# mysql -uroot -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or g.
Your MySQL connection id is 3
Server version: 5.7.28

Copyright (c) 2000 2019 Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type help; or h for help. Type c to clear the current input statement.

mysql> 
# 设置密码。设置的密码必须符合长度,且必须含有数字,小写或大写字母,特殊字符。
mysql> set password=password("Zzj&zzj234812");
Query OK 0 rows affected 1 warning (0.00 sec)

mysql> 
# 刷新权限
mysql> flush privileges;
Query OK 0 rows affected (0.00 sec)

mysql> 

7.开启远程访问

  • 进入数据库:mysql -u root -p
  • 切换到 mysql库:use mysql;
  • 查看用户表select hostuser from user;看到当前host是localhost只允许本地访问。
# 可以看到只允许localhost访问
mysql> select hostuser from user;
+-----------+---------------+
| host      | user          |
+-----------+---------------+
| localhost | mysql.session |
| localhost | mysql.sys     |
| localhost | root          |
+-----------+---------------+
3 rows in set (0.00 sec)

mysql> 
  • 更新user用户表
  
  mysql> update user set `host` = %  where `user` = root  LIMIT 1;
  Query OK 1 row affected (0.00 sec)
  Rows matched: 1  Changed: 1  Warnings: 0
  
  mysql> ^C
  • 强制刷新权限
  mysql> flush privileges;
  • 再次查看用户表。
# root用户的host变成%,即允许所有的ip远程访问,如果需要指定具体的ip,就填具体的ip即可。
mysql> select hostuser from user;
+-----------+---------------+
| host      | user          |
+-----------+---------------+
| %         | root          |
| localhost | mysql.session |
| localhost | mysql.sys     |
+-----------+---------------+
3 rows in set (0.00 sec)

mysql> 
  • 查看端口监听状态netstat -an|grep 3306,修改mysql配置文件my.cnf
# 这里可以看到 0 0.0.0.0:3306 表示所有IP均可访问。
# 如果显示为 127.0.0.1:3306 说明只允许本地访问,需要修改配置文件。
mysql> exit
Bye
[root@VM_0_6_centos ~]# netstat -an|grep 3306
tcp6       0      0 :::3306                 :::*                    LISTEN     
[root@VM_0_6_centos ~]# 
  • 修改my.cnf。

注释掉bind-address 127.0.0.1属性。重启mysql服务service mysql restart再次使用命令netstat -an|grep 3306查看端口监听状态:

[root@VM_0_6_centos ~]# netstat -an|grep 3306
tcp6       0      0 :::3306                 :::*                    LISTEN     
[root@VM_0_6_centos ~]# 

最后,服务器开放3306端口

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/126085.html

相关文章

  • 在linux中安装mysql并解决中文乱码问题

    摘要:安装安装相对来说比较麻烦,可能会遇到各种各样的问题。然后升级一下此时可使用命令来安装安装过程中会提示我们输入密码,按照指示运行即可。中文乱码问题在安装完毕后,即使设置表中为后输入中文仍然会出现这样的东西。 安装mysql linux安装mysql相对来说比较麻烦,可能会遇到各种各样的问题。安装方式有两种: 到官网下载安装包 安装包下载地址 下载完成后直接 sudo dpkg -i pa...

    wapeyang 评论0 收藏0
  • linux安装mysql5.5版本,并配置相关mysql负载。

    摘要:本文有安装版本主从服务配置安装之前先做一个快照便于中间出问题返回,最好每完成一个节点做一次快照。以上操作过程,主从服务器配置完成。后续其它类型的负载会慢慢添加。 本文有安装mysql5.5版本 MySQL主从服务配置 ... 安装之前先做一个快照便于中间出问题返回,最好每完成一个节点做一次快照。 查看linux是否有安装 mysql, rpm -qa|grep mysql 查看ce...

    hzc 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<