环境准备
- 云服务器
- CentOS 7.9 64位
- MySQL(!!!MySQL8 和 MySQL8以下 版本的安装方式有些微差别)
安装 MySQL8及以上
在 root 目录下,安装 mysql 和 mysql-devel
代码语言:javascript复制yum install mysql
代码语言:javascript复制yum install mysql-devel
安装 mysql-server
代码语言:javascript复制wget http://dev.mysql.com/get/mysql80-community-release-el7-5.noarch.rpm
代码语言:javascript复制rpm -ivh mysql80-community-release-el7-5.noarch.rpm
代码语言:javascript复制yum install mysql-community-server
安装成功后重启mysql服务
代码语言:javascript复制service mysqld restart
设置密码
- 登录mysql并输入密码
mysql -u root -p
- mysql8 修改密码方式
alter user 'root'@'localhost' identified by '这里填你要的密码';
重要!!!mysql8初次安装后,需要先通过
代码语言:javascript复制cat /var/log/mysqld.log | grep password
命令查看密码,修改密码时,需要 符合长度,且含有数字、小写或大写字母、特殊字符;
如果要授权的用户是新用户,而不是root账户,则要先新建用户;
代码语言:javascript复制CREATE USER '这里填你要新建的账户'@localhost IDENTIFIED BY '这里填要新建账户的密码';
如果要授权的是root用户,则跳过此命令!!!
授权
以root账户为例
代码语言:javascript复制GRANT ALL PRIVILEGES ON *.* TO 'root'@localhost WITH GRANT OPTION;
代码语言:javascript复制FLUSH PRIVILEGES;
使用 navicat 连接时报错
报错:1045 - Access denied for user 'root'@'xxx'(using password: YES),解决方式见上述步骤;
报错:1130 - Host 'xxx' is not allowed to connect to this MySQL server,解决方式往下看;
安装 MySQL8 以下版本
在 root 目录下,安装 mysql 和 mysql-devel
代码语言:javascript复制yum install mysql
代码语言:javascript复制yum install mysql-devel
安装 mysql-server
代码语言:javascript复制wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
代码语言:javascript复制rpm -ivh mysql-community-release-el7-5.noarch.rpm
代码语言:javascript复制yum install mysql-community-server
安装成功后重启mysql服务
代码语言:javascript复制service mysqld restart
代码语言:javascript复制service mysqld status
设置密码
首次登录,无需输入密码
代码语言:javascript复制mysql -u root
修改密码
代码语言:javascript复制set password for 'root'@'localhost' =password('这里填你修改之后的密码');
mysql7初次安装并登陆mysql时,root账户没有密码
配置远程连接授权设置(配置后即可用navicat建立连接),至此完成安装!
如果是新用户而不是root,则要先新建用户!!!
代码语言:javascript复制create user '这里填你要新建的用户名'@'%' identified by '这里填你要新建用户的密码';
把在所有数据库的所有表的所有权限赋值给位于所有IP地址的root用户,以root账户为例
代码语言:javascript复制grant all privileges on *.* to root@'%'identified by '这里填你的root账户密码';
查看mysql默认端口号:
代码语言:javascript复制登录进mysql后,输入:
show global variables like 'port';
需要开放 MySQL 默认端口3306(控制台 - 安全组 - 配置规则可以配置)!!!
可能会出现的问题
报错:1130 - Host 'xxx.xxx.xxx.xxx' is not allowed to connect to this MySQL server
解决方法
- 执行
mysql -u root -p 密码
- 执行
use mysql;
- 执行
update user set host = '%' where user = 'root';
- 执行
FLUSH PRIVILEGES;