栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

linux下安装mysql8/5.6/5.7+设置远程连接全攻略

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

linux下安装mysql8/5.6/5.7+设置远程连接全攻略

目录

安装mysql8
安装mysql5.6
安装mysql5.7

一、安装mysql8

基本命令

安装 :  yum install mysql-community-server

启动 :  service mysqld start/restart

停止 :  service mysqld stop

查看状态: service mysqld status

本文包括: mysql安装 修改密码 开启远程访问 忘记密码后重置密码 卸载mysql

【安装步骤】

contos7默认安装了mariadb数据库,这里把他移除:yum remove mariadb-libs.x86_64
创建文件目录 mkdir /etc/mysql
获取下载链接
  

4. 在该目录下 下载刚刚的安装链接。wget https://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.rpm
  下载完成后,会得到这个文件名,直接yum localinstall把它添加到本地。
  

5. 这时可以先看添加成功没有 yum search mysql

6.  安装:yum install mysql-community-server
   启动测试: service mysqld start service mysqld status

【修改密码】

1. 刚刚启动成功之后, 用命令查看默认密码并且登录

查看:cat /var/log/mysqld.log | grep password
    

登陆:mysql -u root -p 然后输入上图中的密码

2. 修改密码

(1)先修改初始密码

ALTER USER "root"@"localhost" IDENTIFIED  BY "Root#1234";   // 新密码为 Root#1234

(2)再设置mysql全局变量使他支持简单密码

set global validate_password.policy=0;

    set global validate_password.length=1;

(3)最后将密码设置为简单密码

ALTER USER "root"@"localhost" IDENTIFIED  BY "1234";   // 新密码为 1234

3. exit 退出
  
【授权远程访问】

首先确保关闭了防火墙 并重启mysql。

mysql -u root -p 然后输入密码即可登录

  1. 选择数据库 use mysql
  2. 查看用户表 select host, user, plugin from user;

    可以看到root用户的host为localhost,表示root用户没法远程连接。
    需要新增一条记录:host为%,user为root;

(1)新增用户

CREATE USER `root`@`%` IDENTIFIED BY '1234';

(2)授权

GRANT ALL ON *.* TO `root`@`%` WITH GRANT OPTION;

(3)刷新权限

FLUSH PRIVILEGES;

【更改连接的密码校验方式】

caching_sha2_password加密方式在远程访问时候不支持。
需要改成:mysql_native_password

(1)更改连接方式

mysql> ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '1234';
Query OK, 0 rows affected (0.09 sec)

mysql> select host,user,plugin from user;
+-----------+------------------+-----------------------+
| host      | user             | plugin                |
+-----------+------------------+-----------------------+
| %         | root             | mysql_native_password |
| localhost | mysql.infoschema | caching_sha2_password |
| localhost | mysql.session    | caching_sha2_password |
| localhost | mysql.sys        | caching_sha2_password |
+-----------+------------------+-----------------------+
4 rows in set (0.00 sec)

mysql> 

(2)刷新权限

mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.04 sec)

mysql> 

(3)远程连接

【卸载mysql】
  首先 , 停止mysql service mysqld stop

总共分两步: 1.卸载mysql组件 2.删除相关文件夹

【第一步卸载mysql组件】
【 查看MySQL组件 】
[root@localhost ~]# rpm -qa | grep -i mysql
mysql-community-libs-8.0.12-1.el7.x86_64
mysql-community-common-8.0.12-1.el7.x86_64
mysql-community-client-8.0.12-1.el7.x86_64
mysql-community-server-8.0.12-1.el7.x86_64
【删除】
[root@localhost ~]# rpm -ev mysql-community-server-8.0.12-1.el7.x86_64
Preparing packages...
mysql-community-server-8.0.12-1.el7.x86_64
warning: /etc/my.cnf saved as /etc/my.cnf.rpmsave
【删除】
[root@localhost ~]# rpm -ev mysql-community-client-8.0.12-1.el7.x86_64
Preparing packages...
mysql-community-client-8.0.12-1.el7.x86_64
【删除失败】
[root@localhost ~]# rpm -ev mysql-community-common-8.0.12-1.el7.x86_64
error: Failed dependencies:
    mysql-community-common(x86-64) >= 8.0.0 is needed by (installed) mysql-community-libs-8.0.12-1.el7.x86_64
【继续查看】
[root@localhost ~]# rpm -qa | grep -i mysql
mysql-community-libs-8.0.12-1.el7.x86_64
mysql-community-common-8.0.12-1.el7.x86_64
【删除】
[root@localhost ~]# rpm -e --noscripts mysql-community-libs-8.0.12-1.el7.x86_64
[root@localhost ~]# 
【删除】
[root@localhost ~]# rpm -e --noscripts mysql-community-common-8.0.12-1.el7.x86_64
[root@localhost ~]# 
【查看】
[root@localhost ~]# rpm -qa | grep -i mysql
[root@localhost ~]# 

【第二步:删除相关目录】
【查看】
[root@localhost ~]# find / -name mysql
/etc/mysql
/etc/selinux/targeted/active/modules/100/mysql
/var/lib/mysql
/var/lib/mysql/mysql
【删除】
[root@localhost ~]# rm -rf /etc/mysql
[root@localhost ~]# rm -rf /etc/selinux/targeted/active/modules/100/mysql
[root@localhost ~]# rm -rf /var/lib/mysql
[root@localhost ~]# find / -name mysql
【再次检查,什么都没有说明卸载成功了】
[root@localhost ~]# rpm -qa | grep -i mysql
[root@localhost ~]#
二、安装mysql5.6
  1. 下载mysql  https://dev.mysql.com/downloads/mysql/5.6.html#downloads


2. 上传解压


3. 删除安装包, 重命名解压后的文件


4. 先检查是否有mysql用户组和mysql用户,没有就添加有就忽略: groups mysql
添加用户组和用户 groupadd mysql && useradd -r -g mysql mysql


5. 进入mysql目录修改权限 cd mysql/ chown -R mysql:mysql ./


6. 安装依赖库 yum -y install autoconf && yum install libaio* -y && yum -y install numactl

  1. 执行安装脚本 ./scripts/mysql_install_db --user=mysql

  2. 脚本安装完之后修改当前目录拥有者为root用户,修改data目录拥有者为mysql

chown -R root:root ./ && chown -R mysql:mysql data
  
9. 创建默认日志文件 mkdir /var/log/mariadb && touch /var/log/mariadb/mariadb.log

  1. my.cnf设置为用户可读写,其他用户不可写 。 chmod 644 /usr/local/mysql/my.cnf

  2. 启动mysql ./support-files/mysql.server start

  3. 修改密码 ./bin/mysqladmin -u root -h localhost.localdomain password ‘123456’

  4. 登陆mysql ./bin/mysql -h127.0.0.1 -uroot -p123456

  5. 授权远程登陆 grant all privileges on . to root@’%’ identified by ‘123456’; flush privileges;

【卸载】

  1. rm -rf /root/.mysql_sercret

  2. rm -rf /var/lib/mysql

  3. rm -rf /usr/local/mysql

【mysql5.6 开机自启动】

1,将服务文件复制一份到init.d下,并重命名为mysqld
  cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
2,对文件赋予执行权限
  chmod +x /etc/init.d/mysqld 或 chmod 777 /etc/init.d/mysqld
3,增加mysqld服务
  chkconfig --add mysqld
4,查询mysqld服务情况
  chkconfig --list mysqld


5, 如果3,4,5 为off:
  chkconfig --level 345 mysqld on
6, 重启服务器验证:reboot

三、安装mysql5.7
  1. 解压 tar -zxvf mysql-5.7.34-linux-glibc2.12-x86_64.tar.gz

mv mysql-5.7.34-linux-glibc2.12-x86_64 mysql

  1. 先检查是否有mysql用户组和mysql用户,没有就添加有就忽略: groups mysql

    添加用户组和用户 groupadd mysql && useradd -r -g mysql mysql

  2. 创建数据目录并赋予权限

mkdir -p /data/mysql
  chown mysql:mysql -R /data/mysql

  1. 修改配置文件 vim /etc/my.cnf
[mysqld]
bind-address=0.0.0.0
port=3306
user=mysql
basedir=/usr/local/mysql
datadir=/data/mysql
socket=/tmp/mysql.sock
log-error=/data/mysql/mysql.err
pid-file=/data/mysql/mysql.pid
#character config
character_set_server=utf8mb4
symbolic-links=0
explicit_defaults_for_timestamp=true

  1. 初始化

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

  1. 查看密码

cat /data/mysql/mysql.err

  1. 启动mysql

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

修改密码

  1. 登录
      ./mysql -u root -p

  2. 修改密码
      SET PASSWORD = PASSWORd(‘123456’);
      ALTER USER ‘root’@‘localhost’ PASSWORD EXPIRE NEVER;
      FLUSH PRIVILEGES;
      

  3. 刷新规则允许外部访问
      use mysql      #访问mysql库
      update user set host = ‘%’ where user = ‘root’;      #使root能再任何host访问
      FLUSH PRIVILEGES;       #刷新
      

    卸载

  4. kill -9 pid

  5. rm -rf /root/.mysql_sercret

  6. rm -rf /var/lib/mysql

  7. rm -rf /usr/local/mysql

  8. rm -rf /data/mysql

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/460378.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号