首页 > 数据库技术 > 详细

[运维] 安装 MySQL 时遇到的问题

时间:2019-10-31 10:04:18      阅读:120      评论:0      收藏:0      [点我收藏+]

环境:

云服务器 镜像 Linux centos 7.6 

MySQL:  mysql-8.0.18-linux-glibc2.12-x86_64.tar.xz

安装过程就忽略不计了, 非要说的话,就是 

下载MySQL的包(推荐8.x版本) ----> 通过 SSH 上传到云服务器 ----> 选择一个目录进行解压  ----> cd 解压后的文件夹/bin ----> ./mysqld --initialize --user=mysql --datadir=/usr/local/mysql/data --basedir=/usr/local/mysql  
这里要注意目录的问题, 根据自己解压的目录来设置
如何解压 xz 后缀的压缩包? 
1. xz -d ****.tar.xz 先将 xz 解压成 tar
2. tar -zxvf ****.tar 再解压 tar

为了以后启动数据库的时候方便
 ln -s /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
 ln -s /usr/local/mysql/bin/mysql /usr/bin/mysql
这样以后就可以通过
service mysql start/restart 来操作 MySQL 了

问题1: 

mysql> use mysql;
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.

翻译过来就是 ---> 在执行此语句之前,必须使用alter user语句重置密码。

问题拓展: https://stackoverflow.com/questions/33467337/reset-mysql-root-password-using-alter-user-statement-after-install-on-mac

于是我就尝试着去初始化密码, 然后就有了问题2 ......

问题2: 

mysql> SET PASSWORD = PASSWORD(123456);
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near PASSWORD(123456) at line 1

翻译过来就是 -----> 您的sql语法有错误;请查看mysql服务器版本对应的手册,在第1行的“password(‘123456‘)”附近使用正确的语法

于是我根据上面那个链接又换了一种方法, 然而......

mysql> UPDATE mysql.user SET Password=PASSWORD(123456) WHERE User=root;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near (123456) WHERE User=root‘‘ at line 1

都不用特意的去翻译, 我就知道是SQL语句的版本问题, 然后我去了MySQL的官方文档处寻求答案 https://dev.mysql.com/doc/refman/8.0/en/password-management.html  大概看了一下后依然懵逼

然后, 我看到了

技术分享图片

mysql> ALTER USER root@localhost IDENTIFIED BY 123456;
Query OK, 0 rows affected (0.03 sec)

果然高赞不是最靠谱的, 有时候就算是看到了感觉像是最好的答案也要在看看其他的选项, 就这样, 我们暂且将密码设置为 123456, 重新登录一下试试康~

技术分享图片

咿呀哒! 问题解决

mysql> use mysql;
Database changed

然后我操作的目的就是为了实现远程登录, 因为我不想敲建库建表的代码, 想通过 Navicat 远程控制,  开启MySQL的远程登录连接, 顺便修改一下密码, 毕竟是要正式使用的数据库

mysql> update user set user.Host=% where user.User=root;
Query OK, 1 row affected (0.01 sec)
Rows matched: 1  Changed: 1  Warnings: 0

  mysql> flush privileges;
  Query OK, 0 rows affected (0.00 sec)

开启远程连接成功

 

emmmmm......我去研究一下怎么安全卸载MySQL

 

[运维] 安装 MySQL 时遇到的问题

原文:https://www.cnblogs.com/unityworld/p/11769462.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!