Linux上rpm方式安装数据库

rpm 安装数据库

  • 一、 安装前 检查数据库有没有默认安装——mariadb(有卸载)

    • ①rpm查看命令:

      • CentOS6——rpm -qa|grep mysql

      • CentOS7——rpm -qa|grep mariadb

    • ②rpm卸载命令:

      • rpm -e --nodeps 软件名称
  • 二、安装对应依赖

    • ①先查看有没有依赖

      • rpm -qa|grep libaio
    • ②在安装依赖

      • yum install libaio -y
  • 三、给与对应目录权限

    • 原因: mysql安装过程中,会通过mysql用户在/tmp目录下

    • 所以 请给/tmp较大的权限

    • 指令:chmod -R 777 /tmp —— 777表示所有权限

  • 四、上传mysql文件安装

    • ①创建software(软件)文件夹——在user/local目录下

      • mkdir software
    • ②将对应的文件上传上去

      • img
    • 正式安装

      • 去到上传好的文件目录下按顺序执行下面安装

        • rpm -ivh mysql-community-common-5.7.16-1.el7.x86_64.rpm

        • rpm -ivh mysql-community-libs-5.7.16-1.el7.x86_64.rpm

        • rpm -ivh mysql-community-client-5.7.16-1.el7.x86_64.rpm

        • rpm -ivh mysql-community-server-5.7.16-1.el7.x86_64.rpm

        • 如果不能最后一步出现依赖安装失败可以 执行下面指令

          • sudo rpm -ivh --nodeps mysql-community-server-5.7.16-1.el7.x86_64.rpm
    • 为什么要前面要加 sudo 提高用户权限——就可以避免因为权限不够产生缺少依赖了

    • 查看是否安装成功

      • 指令:mysqladmin --version
      • img
  • 五、安装完成后需要配置数据库

    • ① 初始化数据库

      • 指令:mysqld --initialize --user=mysql
    • ② 初始化完成后——会自动生成root用户的临时密码

      • 查看临时密码:cat /var/log/mysqld.log
      • img

    • ③启动mysql数据库——一定要先启动不然无法登入修改

      • 启动:systemctl start mysqld

      • 状态: systemctl status mysqld

      • 关闭:systemctl stop mysqld

    • ④重新设置密码

      • 使用临时密码登入

        • 登入指令:mysql -uroot -p ———这个登入指令时无法判别数据库是否启动的
      • 修改密码:

        • ALTER USER ‘root’@‘localhost’ IDENTIFIED BY ‘123’;
      • 注意: 这个指令一定要有“;”结尾不然数据库不识别

        • ALTER USER ‘用户名’@‘localhost’ IDENTIFIED BY ‘密码’;

          • 有 query ok才表示设置成功

      • 重新登入验证

        • quit退出登入

        • 配置数据库开启自启

    • ⑤查看mysql是否自启动(默认自启动)

      • 指令:systemctl list-unit-files|grep mysqld.service

        • 不是enabled可以运行如下命令设置自启动
          • systemctl enable mysqld.sercice
  • 六、设置字符集

    • 1.修改配置文件(步骤一)

      • 进入配置文件中:vi /etc/my.cnf

        • 在最后一行添加:character_set_server=utf8

          • img
        • ESC ——:wq

    • 2.重新启动mysql——修改完成配置文件需要重启才能生效

      • 重启指令: systemctl restart mysqld ——重启可能出现重启不成功可以多重启几次

      • 查看是否重启成功——查看状态: systemctl status mysqld

    • 3.验证是否设置成功

      • 登入——创建一个数据库

        • create database mydb;
      • 创建表和插入数据

        • 创建表——create table mytbl(id int(10),name varchar(20));
          • 注意:这里创建表的时候一定要给定长度不然数据插入不进去
      • 插入数据 ——insert into mytbl values(1,‘张三’);

      • 查看——数据select * from mytbl;

        • img

        • 能显示出是中文表示修改成功

  • 七、远程连接数据库

    • 关闭防火墙

      • 查看指令:service iptables status

      • 永久关闭指令:chkconfig iptables on——会重启

    • 查看操作数据库权限

      • 原因:首先要知道数据安装完成后

        • 没有配置远程连接的权限是无法进行远程连接的
      • ①查看权限

        • 指令:select Host,user,authentication_string from user;
          • 这个是未设置权限前的
            • img
      • ②简单设置用户权限

        • 设置root用户所有权限——grant all privileges on . to root@’%’ identified by ‘123’;
          • 设置后
            • img
      • ③结论:可以看见这里不再是本地操作数据库了

        • Host——变成%——这里表示远程连接的含义

        • user——表示连接的用户

        • authentication_string ——验证字符串——是数据库加密的成的——用于验证密码

        • 可以看到第一和最后一个的验证字符串——完全匹配表示两个密码一致

      • ④测试连接

        • 通过navicat测试是否能远程访问
          • img
  • 八、数据库重置密码

    • 一般不常用的数据库忘记密码是常有的事可以通过下面操作解决

      • ① 修改数据库配置

        • 一般情况都是放在这个位置

          • 指令:vi /etc/my.cnf——打开数据库配置文件

          • 打开后在最后一行 加入 skip-grant-tables

          • 使我们密码免登录

      • ②重启mysql

        • 改完数据库配置文件需要通过重启软件重新读取配置完成修改生效
          • 指令:systemctl restart mysqld——使修改的配置生效
      • ③ 进入 msql数据中修改密码

        • 登入指令:mysql -uroot -p

          • 进入后—— show databases; 展示所有数据库

            • img

            • 可以看到msyql这个原生数据库

              • 用户登入验证的信息就在这个数据库中
      • ④查看用户信息

        • a、跟图形界面一样想查看数据库就先要使用数据库

          • 使用msyql数据库 :use mysql
        • b、指令 :select Host,user,authentication_string from user;——查看数据库中的user表

          • img

          • 就可以看到有哪些用户可以操作数据库了

      • ⑤修改数据库用户密码

        • (1)old指令: UPDATE user SET password=PASSWORD(“新密码”) WHERE user=‘你的用户名’;

          • 可能会出错——这个指令时老版本的 如果出错了可以有新版本的指令
        • (2)young指令: update mysql.user set authentication_string=password(‘root’) where user=‘root’ ;

        • (3)配置完成后要刷新特权信息才能生效

          • 指令: flush privileges;
      • ⑥修改完成后需要退出数据库

        • 将之前该的配置文件还原
          • vi /etc/my.cnf——删除最后一加入行设置的信息
      • ⑦登入测试

        • 重启mysql——systemctl restart mysqld

        • 重新登入——mysql -uroot -p

        • 通过原来的设置好的密码登入

          • img
        • 登入进去后——是无法操作数据的

          • 他会给你一个提示——You must reset your password using ALTER USER statement before executing this statement

            • 需要用户在执行该语句之前,必须使用ALTER USER语句重置密码
          • 执行:ALTER USER ‘root’@‘localhost’ IDENTIFIED BY ‘123’;

          • 设置root用户 密码:123

          • 从而实现了密码重置

● 需要用户在执行该语句之前,必须使用ALTER USER语句重置密码

● 执行:ALTER USER ‘root’@‘localhost’ IDENTIFIED BY ‘123’;

● 设置root用户 密码:123

/localhost/)’ IDENTIFIED BY ‘123’;

    - 设置root用户         密码:123

    - 从而实现了密码重置

● 需要用户在执行该语句之前,必须使用ALTER USER语句重置密码

● 执行:ALTER USER ‘root’@‘localhost’ IDENTIFIED BY ‘123’;

● 设置root用户 密码:123

● 从而实现了密码重置

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值