MySQL技术点合集

目录

1. MySQL目录

2. 验证是否首次登陆方法

3. 在Liunx中使用命令来输入sql语句方法

4. 获取修改密码

5. 关闭密码策略

 6. 忘记MySQL密码找回

7. 旋转90度横向查看表

8. 添加一个远程连接的用户


1. MySQL目录

/usr/bin/ mysql相关命令
vim /etc/my.cnf mysql配置文件
ls  /var/lib/mysql/ mysql数据目录
vim /var/log/mysqld.log mysql日志文件

2. 验证是否首次登陆方法

刚下载好的mysql,没有启动和登录时, /var/log/mysqld.log日志文件是没有任何数据的,在数据目录 /var/lib/mysql/里也是没有任何东西的。

3. 在Liunx中使用命令来输入sql语句方法

#在liunx命令行中,使用-p指定密码,然后后面-e后面跟着双引号括起来的 SQL 语句就可以
mysql -p'password' -e "SQL语句"

4. 获取修改密码

获取初始化密码

grep 'password' /var/log/mysqld.log

在liunx命令行修改密码例句

mysqladmin -p'TianPFh@123' password '1234'

登录mysql里修改密码例句

ALTER USER 'root'@'localhost' IDENTIFIED BY 'Qwe+123456';

5. 关闭密码策略

        mysql5.7系列适用例句

#禁用 MySQL 的密码验证插件
echo "validate-password=off" >> /etc/my.cnf

        mysql8.0系列适用例句

#从 MySQL 服务器卸载 validate_password 组件
mysql -p'TianPFh@123' -e "UNINSTALL COMPONENT 'file://component_validate_password'"


原因:
    在 MySQL 8.0 中,validate_password 组件的配置方式与以前的版本有所不同。直接在配置文件中使用 validate-password=off 是不适用的,因为 MySQL 8.0 使用的是组件机制来管理 validate_password 插件。直接在配置文件中使用 validate-password=off 是无效的。

         mysql中通用方法

登录mysql命令提示符中使用下述命令:

#查看所有密码策略相关变量
SHOW VARIABLES LIKE 'validate_password%';
#降低安全策略为最低
SET GLOBAL validate_password_policy=LOW;
#修改密码长度为最少是4位数
SET GLOBAL validate_password_length=4;

 6. 忘记MySQL密码找回

1.编辑mysql配置文件

vim /etc/my.cnf

#在[mysqld]字段下新增如下内容,然后保存退出。
#如果有 validate-password=off 需要删除,这两个语句不要同时存在
skip-grant-tables

2.重启mysql

systemctl restart mysqld

3.使用mysql命令进入

mysql

4.执行如下sql语句   

USE mysql;
UPDATE user SET authentication_string = PASSWORD('1234') WHERE User = 'root' AND Host='localhost';
FLUSH PRIVILEGES;
quit

#5.7大版本的数据库执行上述sql语句,如果是mysql8.0大版本的执行下面的语句
#原因是8.0以后废弃password函数,所以上面那么条改密码命令在8.0版本用不了
#其中密码一般需要符合原来的安全策略,按情况自行修改

USE mysql;
ALTER USER 'root'@'localhost' IDENTIFIED BY 'Qaz+1234!qw';
FLUSH PRIVILEGES;
quit





5.在编辑mysql配置文件

vim /etc/my.cnf

#在文件中删除前面添加的skip-grant-tables

6.重启mysql

systemctl restart mysqld

7.使用新密码登录即可

mysql -uroot -p新密码

7. 旋转90度横向查看表

#在登录mysql中使用某个库,想要以行形式(横向)查看表中的数据,需要使用\G语句而非常见的分号;来结束查询。

SELECT * FROM user \G

8. 添加一个远程连接的用户

#在 MySQL 提示符下操作,使用以下 SQL 命令创建一个新用户,并授予远程访问权限:
CREATE USER 'root'@'%' IDENTIFIED BY '1234';

#授予新用户所需的数据库访问权限
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%';

刷新 MySQL 权限:
FLUSH PRIVILEGES;


解释:
    创建一个名为 root 的用户,设置密码为1234,允许该用户从任何远程主机(%)连
接到 MySQL 数据库。 然后再设置root这个远程账户可以访问数据库中的任何库和任何表,
具有全部的权限,最后刷新权限。

相关推荐

  1. MySQL技术

    2024-05-26 00:52:22       11 阅读
  2. mysql-常见函数

    2024-05-26 00:52:22       30 阅读
  3. mysql面试题-基础

    2024-05-26 00:52:22       30 阅读
  4. mysql面试题-分布式

    2024-05-26 00:52:22       31 阅读
  5. 计算机网络知识【王道计算机考研】

    2024-05-26 00:52:22       36 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-05-26 00:52:22       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-05-26 00:52:22       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-05-26 00:52:22       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-05-26 00:52:22       18 阅读

热门阅读

  1. PaddleClas 指定gpu

    2024-05-26 00:52:22       9 阅读
  2. PHP开发安全:专家级代码审计策略与方法

    2024-05-26 00:52:22       10 阅读
  3. Flutter 中的 ExpandIcon 小部件:全面指南

    2024-05-26 00:52:22       10 阅读
  4. Python项目开发实战:五子棋游戏(案例教程)

    2024-05-26 00:52:22       10 阅读
  5. QGraphicsView中鼠标位置图像缩放时不变

    2024-05-26 00:52:22       11 阅读
  6. 【Spark】加大hive表在HDFS存的每个文件的大小

    2024-05-26 00:52:22       9 阅读
  7. Python案例题目,入门小白题

    2024-05-26 00:52:22       11 阅读
  8. HTML5 Canvas图形绘制技术应用

    2024-05-26 00:52:22       8 阅读
  9. 链表相交-力扣

    2024-05-26 00:52:22       10 阅读
  10. RabbitMQ01-liunx下安装及用户权限分配

    2024-05-26 00:52:22       8 阅读