Linux安装mysql8
1.更新下yum
1 | [root@hadoop001 mysql]# yum -y update |
2.确认系统版本(),从官网下载https://dev.mysql.com/downloads/repo/yum/对应的安装包
mysql80-community-release-el7-11.noarch.rpm,进行本地安装
1 2 3 | [root@hadoop001 mysql]# ls mysql80-community-release-el7-11.noarch.rpm [root@hadoop001 mysql]# yum localinstall mysql80-community-release-el7-11.noarch.rpm |
2.安装 mysql-community-server
1 | [root@hadoop001 mysql]# yum -y install mysql-community-server |
3.启动mysql,并从日志中查看初始密码
1 2 | [root@hadoop001 mysql]# systemctl start mysqld [root@hadoop001 mysql]# cat / var /log/mysqld.log |
4.接下来修改初始密码
1)一般来说按照上述给定的初始密码能成功登录mysql!
首先就是要重置密码,不然使用任何其他语句都会报以下错误
首次重置密码一定要符合复杂性要求,不然会报错。
成功改完密码后就可以正常使用其他语句了,可以查看一下当前对密码的复杂性要求参数
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | mysql> alter user 'root' @ 'localhost' identified by 'mysql@123M>' ; Query OK, 0 rows affected (0.01 sec) mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | sys | +--------------------+ 4 rows in set (0.02 sec) mysql> SHOW VARIABLES LIKE 'validate_password%' ; +-------------------------------------------------+--------+ | Variable_name | Value | +-------------------------------------------------+--------+ | validate_password.changed_characters_percentage | 0 | | validate_password.check_user_name | ON | | validate_password.dictionary_file | | | validate_password.length | 8 | | validate_password.mixed_case_count | 1 | | validate_password.number_count | 1 | | validate_password.policy | MEDIUM | | validate_password.special_char_count | 1 | +-------------------------------------------------+--------+ 8 rows in set (0.01 sec) |
改低一点
1 2 3 4 5 | mysql> set global validate_password.policy=LOW; Query OK, 0 rows affected (0.00 sec) mysql> set global validate_password.length=4; Query OK, 0 rows affected (0.00 sec) |
发现可以改成以下密码也不会报错了
1 2 | mysql> alter user 'root' @ 'localhost' identified by 'mysql' ; Query OK, 0 rows affected (0.00 sec) |
2)但如果遇到下面问题,
就换种方式,先改下文件,添加 skip-grant-tables
1 | [root@hadoop001 mysql]# vim /etc/my.cnf |
然后重启mysql
1 | [root@hadoop001 mysql]# systemctl restart mysqld; |
现在可以不输入密码直接回车进入mysql
1 | [root@hadoop001 mysql]# mysql -u root -p |
修改密码,要符合规定,记得flush privileges一下
1 | mysql> use mysql; |
1 2 3 | mysql> alter user 'root' @ '%' identified by 'mysql@123' ; Query OK, 0 rows affected (0.01 sec) mysql> flush privileges; |
5.删除 skip-grant-tables,重启mysql,就可以用新密码进去了
6.关于设置远程登录,补充下
这里报错可以看到是什么原因了
重置一下,其实应该只要改root对应哪个,我索性都改了,因为自用也没什么关系
1 2 3 4 5 6 7 8 | mysql> update user set host = '%' ; Query OK, 4 rows affected (0.01 sec) Rows matched: 4 Changed: 4 Warnings: 0 mysql> flush privileges; Query OK, 0 rows affected (0.00 sec) mysql> alter user 'root' @ '%' identified by 'mysql' ; Query OK, 0 rows affected (0.00 sec) |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构