当前位置:   article > 正文

Linux centOS7安装msyql步骤_msq安装教程

msq安装教程

一、演示环境

  1.centOS7

  2.mysql-8.0.30 

二、安装MySQL

【1】下载

MySQL :: Download MySQL Community Server (Archived Versions)

【2】查看是否已经安装 Mysql

rpm -qa | grep msyql

 如果查看出来有东西,可以使用下面命令将其删除(xxx 为文件全名)

rpm -e xxx

【3】上传解压缩并移动

1.解压

  1. 不同包解压方式
  2. tar -zxvf mysql-8.0.30-linux-glibc2.12-x86_64.tar.gz
  3. tar -xvf mysql-8.0.30-linux-glibc2.12-x86_64.tar
  4. tar -xvJf mysql-8.0.30-linux-glibc2.12-x86_64.tar.xz

2.解压缩完成后

 

3.复制到 /usr/local 目录下并重命名

  1. 复制并重命名到/usr/local下
  2. [root@cskCentOS7 opt] cp -r mysql-8.0.30-linux-glibc2.12-x86_64 /usr/local/mysql

【4】先检查是否有mysql用户组和mysql用户,没有就添加有就忽略:

[root@cskCentOS7 opt] groups mysql

 添加用户组和用户

[root@cskCentOS7 opt] groupadd mysql && useradd -r -g mysql mysql

【5】添加数据库存储文件夹并设置权限

文件夹就放在这里就好了

  1. [root@cskCentOS7 opt] mkdir -p /data/mysql //创建文件夹
  2. [root@cskCentOS7 opt] chown mysql:mysql -R /data/mysql //给文件夹赋权

【6】配置文件 vim /etc/my.cnf(没有就新建)

  1. [mysqld]
  2. #如果想要远程连接数据库,则注释bind-address
  3. #bind-address=127.0.0.1
  4. port=3306
  5. user=mysql
  6. #mysql根目录
  7. basedir=/usr/local/mysql
  8. #数据库存储文件夹
  9. datadir=/data/mysql
  10. socket=/tmp/mysql.sock
  11. log-error=/data/mysql/mysql.err
  12. pid-file=/data/mysql/mysql.pid
  13. #character config
  14. character_set_server=utf8mb4
  15. symbolic-links=0
  16. explicit_defaults_for_timestamp=true

【7】初始化

  1. [root@cskCentOS7 opt] cd /usr/local/mysql/bin/
  2. [root@cskCentOS7 opt] ./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql/ --datadir=/data/mysql/ --user=mysql --initialize

查看日志并记录下临时密码(没有error的话就是初始化成功)

[root@cskCentOS7 opt] cat /data/mysql/mysql.err

 【8】启动mysql

  1. #将msyql复制到service中,使用service启动
  2. [root@cskCentOS7 bin] cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
  3. [root@cskCentOS7 bin] service mysql start

启动成功,到这就安装成功了

 

 三、修改密码

1. 开启免密码登陆

    修改my.cnf文件   默认在/etc/my.cnf。在[mysqld]模块下面添加:skip-grant-tables 保存退出。

[root@cskCentOS7 bin] vim /etc/my.cnf  

   

 2. 重启服务,使配置生效 。   

[root@cskCentOS7 bin] service mysql restart

    

3. 登陆  /usr/local/mysql/bin/mysql -u root -p   不用输入密码直接敲回车键(或者输入临时密码)

 4. 刷新规则允许外部访问

  1. mysql> use mysql; #进入mysql数据库
  2. mysql> select user,host from user; #查询用户访问规则
  3. mysql> update user set host = '%' where user = 'root'; #修改为任意ip可访问
  4. mysql> FLUSH PRIVILEGES; #刷新

5.修改密码

  1. mysql> ALTER USER "root"@"%" IDENTIFIED BY "123456"; #设置密码
  2. mysql> FLUSH PRIVILEGES; #刷新
  3. mysql> quit #退出

6.删除免密登录

        1.删除/etc/my.cnf 中的 skip-grant-tables 保存退出

        2.重启服务 service mysql restart

7.使用新密码登陆 

[root@cskCentOS7 bin] /usr/local/mysql/bin/mysql -u root -p

8.设置环境变量

 修改文件  vim  /etc/my.cnf  在文件最后加入

  1. export MYSQL_HOME=/usr/local/mysql
  2. export PATH=$MYSQL_HOME/bin:$PATH

  

  让文件生效

[root@cskCentOS7 mysql] source /etc/profile    

 四、创建新用户并给授权指定的数据库权限

1.创建mysql新用户

CREATE USER '用户名'@'访问级别' IDENTIFIED BY '密码';

  访问级别:

  1. '%' - 所有情况都能访问
  2. 'localhost' - 本机才能访问
  3. '111.222.333.444' - 指定 ip 才能访问

 2.给用户授权

  mysql8以下版本

mysql> GRANT 权限类型 ON 数据库名.数据库表 TO 用户名@'访问级别' IDENTIFIED BY '密码' WITH GRANT OPTION;

  mysql8版本必须分两步来实现用户权限【1、先创建用户;2、对该用户分配权限;3、最后,刷新权限】

  1. mysql> CREATE USER '用户民'@'访问级别' IDENTIFIED BY '密码';
  2. mysql> GRANT 权限类型 ON 数据库.数据表 TO '用户名'@'访问级别' WITH GRANT OPTION;
  3. mysql> FLUSH PRIVILEGES;

  权限类型

  1. 权限类型可以为 all,select,delete,update,create,drop
  2. 数据库名 所有的 用*
  3. 数据库表 所有的 用*

如果创建用户报这个错是因为已经存在该用户

  1. mysql> CREATE USER 'test'@'%' IDENTIFIED BY '123456';
  2. ERROR 1227 (42000): Access denied; you need (at least one of) the SYSTEM_USER privilege(s) for this operation

 3.删除用户

  1. mysql> drop user 'test'@'%'; #删除用户
  2. Query OK, 0 rows affected (0.01 sec)
  3. mysql> flush privileges; #刷新
  4. Query OK, 0 rows affected (0.00 sec)

四、mysql8远程连接报错

修改MySQL数据库远程连接加密规则_微风~~的博客-CSDN博客_修改mysql加密规则https://blog.csdn.net/qq_45523551/article/details/127892630?spm=1001.2014.3001.5502

声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号