MySQL安装及初始密码设置方式

 更新时间:2024年08月01日 10:20:27   作者:炽天使YRLT  
这篇文章主要介绍了MySQL安装及初始密码设置方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

运行mysql --help | grep my.cnf查看my.cnf配置位置的读取顺序。

/etc/my.cnf不存在,则我们需要在etc下创建my.cnf配置文件(mysql会优先度读取)。

ps -ef|grep mysqld

mysql不要随意修改配置文件,因为修改了它可能就启动不了了

  • 下载MySQL包
wget http://repo.mysql.com/mysql57-community-release-el7-10.noarch.rpm
  • 安装MySQL源
rpm -Uvh mysql57-community-release-el7-10.noarch.rpm
  • 安装MySQL
yum install -y mysql-community-server

使用yum -y install mysql-community-server安装mysql时候可能提示以下错误

The GPG keys listed for the “MySQL 5.7 Community Server” repository are already installed but they are not correct for this package.
Check that the correct key URLs are configured for this repository.

Failing package is: mysql-community-libs-compat-5.7.37-1.el7.x86_64
GPG Keys are configured as: file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql

原因是Mysql的GPG升级了,需要重新获取

  • 使用以下命令即可
rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022

然后要启动MySQL,要设置初始密码

1.例如你的 root用户现在没有密码,你希望的密码修改为123456,那么命令是:

mysqladmin -u root password 123456

但是这又有一个问题,它显示找不到mysqladmin这个命令

解决办法如下:

首先找到MySQL的安装路径,找到mysql,mysqladmin的位置

  • 使用命令
whereis mysql
whereis mysqladmin
  • 创建软链接
ln -s /usr/local/mysql/bin/mysql /usr/bin
ln -s /usr/local/mysql/bin/mysqladmin /usr/bin
  • 启动MySQL
systemctl start mysqld.service
  • 查找初始密码
[root@VM-4-13-centos bin]# grep "password" /var/log/mysqld.log
2022-11-11T13:30:29.233762Z 1 [Note] A temporary password is generated for root@localhost: dnqPGeySk6_8
2022-11-11T13:59:07.201871Z 2 [Note] Access denied for user 'root'@'localhost' (using password: YES)
2022-11-11T13:59:16.191045Z 3 [Note] Access denied for user 'root'@'localhost' (using password: NO)
2022-11-11T13:59:46.683483Z 4 [Note] Access denied for user 'root'@'localhost' (using password: NO)
2022-11-11T14:00:06.485081Z 5 [Note] Access denied for user 'root'@'localhost' (using password: NO)
2022-11-11T14:00:11.311448Z 6 [Note] Access denied for user 'root'@'localhost' (using password: NO)
2022-11-11T14:01:12.576128Z 7 [Note] Access denied for user 'root'@'localhost' (using password: NO)
2022-11-11T14:01:54.863154Z 8 [Note] Access denied for user 'root'@'localhost' (using password: NO)

1.例如你的 root用户现在没有密码,你希望的密码修改为123456,那么命令是:

mysqladmin -u root password 123456

2.如果你的root现在有密码了(123456),那么修改密码为abcdef的命令是:

mysqladmin -u root -p password abcdef

注意,命令回车后会问你旧密码,输入旧密码123456之后命令完成,密码修改成功。

3.如果你的root现在有密码了(123456),那么修改密码为abcdef的命令是:

mysqladmin -u root -p123456 password abcdef (注意-p 不要和后面的密码分开写,要写在一起,不然会出错,错误如下所示)

更好的方式是使用命令查询初始密码

然后登陆进入MySQL

使用命令行修改密码,但是如果我们设置的密码复杂度不够,它是不给设置的,所以要修改一下配置

set global validate_password_policy=0;  # 保密级别
set global validate_password_length=1; # 密码长度

然后修改密码

ALTER USER USER() IDENTIFIED BY '您的新密码;

至此就OK了~

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 优化mysql之key_buffer_size设置

    优化mysql之key_buffer_size设置

    这篇文章主要介绍了优化mysql之key_buffer_size设置的相关资料,需要的朋友可以参考下
    2016-05-05
  • MySQL嵌套查询实例详解

    MySQL嵌套查询实例详解

    这篇文章主要介绍了MySQL嵌套查询的使用技巧,结合实例形式较为详细的分析了MySQL嵌套查询参数设置、使用方法与注意事项,需要的朋友可以参考下
    2015-12-12
  • mysql存储过程之返回多个值的方法示例

    mysql存储过程之返回多个值的方法示例

    这篇文章主要介绍了mysql存储过程之返回多个值的方法,结合实例形式分析了mysql存储过程返回多个值的实现方法与PHP调用技巧,需要的朋友可以参考下
    2019-12-12
  • Mysql查询条件判断是否包含字符串的方法实现

    Mysql查询条件判断是否包含字符串的方法实现

    本文主要介绍了Mysql查询条件判断是否包含字符串的方法实现,主要包括like,locate,postion,instr,find_in_set这几种方法,具有一定的参考价值,感兴趣的可以了解一下
    2023-10-10
  • Mysql写入数据十几秒后被自动删除了如何解决

    Mysql写入数据十几秒后被自动删除了如何解决

    这篇文章主要介绍了Mysql写入数据十几秒后被自动删除了如何解决,文章通过围绕主题展开详细的内容介绍,具有一定的参考价值,需要的小伙伴可以参考一下
    2022-09-09
  • mysql中tonumber函数使用及注意事项

    mysql中tonumber函数使用及注意事项

    在MySQL中,没有直接的TO_NUMBER函数,但可以通过CAST或CONVERT实现字符串到数字的转换,转换前需明确数据类型,了解转换语法,并注意错误处理、空值处理、格式合规性和精度问题,本文介绍mysql中tonumber函数使用及注意事项,感兴趣的朋友一起看看吧
    2025-02-02
  • MySQL免密登录的几种配置方式小结

    MySQL免密登录的几种配置方式小结

    在日常运维中,为了简化登录操作或提高自动化脚本执行的效率,我们经常需要配置 MySQL 免密登录,MySQL 支持通过多种方式实现免密登录,这样我们就可以避免每次输入密码,本文给大家介绍了MySQL免密登录的几种配置方式,需要的朋友可以参考下
    2024-10-10
  • MySQL exists 和in 详解及区别

    MySQL exists 和in 详解及区别

    本文章向大家介绍MySQL exists 和in 使用方法以及他们之间的区别,需要的朋友可以参考下
    2017-01-01
  • mysql利用group_concat()合并多行数据到一行

    mysql利用group_concat()合并多行数据到一行

    把查询name字段得到的多行记录进行合并,可以通过程序实现,但也可直接在sql层完成,需要的朋友可以参考下
    2014-07-07
  • linux版mysql8配置表名不区分大小写问题

    linux版mysql8配置表名不区分大小写问题

    文章介绍了MySQL 8的安装步骤,包括配置忽略大小写、备份数据、停止和删除数据库文件、配置my.cnf文件、初始化、启动服务和登录设置密码,还讨论了在配置远程连接时遇到的常见问题,特别是MySQL 8版本中由于密码加密方法变化导致的问题解决方法
    2024-11-11

最新评论