腾讯云CentOS系统安装MySQL
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了腾讯云CentOS系统安装MySQL,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含4285字,纯文字阅读大概需要7分钟。
内容图文
腾讯云CentOS7安装MySQL
环境: 腾讯云服务器Centos
MySQL数据库的安装
- 通过wget下载并安装MySQL官方的Yum Repository(这里安装的版本是5.7)
wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
- 使用 yum 安装
yum -y install mysql57-community-release-el7-10.noarch.rpm
- 安装MySQL服务器
yum -y install mysql-community-server
在这里可能会遇到“No match for argument: mysql-community-server”的错误
解决方法:
先执行如下命令在执行 “yum -y install mysql-community-server”
yum module disable mysql
MySQL登录即其配置
- 启动MySQL
systemctl start mysqld.service
- 检查MySQL运行状态
systemctl status mysqld.service
正常结果如图所示:
- 通过日志文件找到此时root用户的密码,以便登录
grep "password" /var/log/mysqld.log
如图所示,获取到的密码:07f*1KGJRSM(
- 使用root用户登录数据库,密码有是上一步骤得到的07f*1KGJRSM(
mysql -uroot -p
在这里有时候会遇到1045报错
这个错误有两种情况
# 第一种
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
# 第二种
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
两种情况的区别就在于你输入的密码正不正确,正确则是YES,密码错误会显示NO
报错解析:在本地登录(localhost)的root用户的拒绝访问,输入的用户密码是错的(using password: NO)
报错解析:在本地登录(localhost)的root用户的拒绝访问,输入的用户密码是对的(using password: YES)
解决方法:
不论怎样我们要先进入数据库才能对数据库进行修改和配置\
1) 打开 配置文件 /etc/my.cnf
vim /etc/my.cnf
2) 编辑my.cnf 在 [mysqld] 下添加 skip-grant-tables ,为了跳过输入密码,可以直接登录
skip-grant-tables
3)重启mysql服务
service mysqld restart
4)重新登录mysql
# 此次登录设置了跳过密码登录,不用输入密码直接回车即可
mysql -uroot -p
5)先选择数据库mysql,在修改数据库密码
# 选择数据库
use mysql;
# 重置密码
update mysql.user set authentication_string=PASSWORD('newpassword') where User='root';
# 刷新权限
flush privileges;
# 退出登录
quit
6) 重新打开 配置文件 /etc/my.cnf 删掉刚刚添加的 skip-grant-tables,并重启mysql服务
# 打开配置文件
vim /etc/my.cnf
# 自行执行删除操作
# 重启mysql服务
service mysqld restart
7)此时则可以进行登录
# 数据库root用户登录
mysql -uroot -p
- 登录数据库之后,此时什么操作都执行不了,因为我们此次登录才算是第一次登录数据库,
而MySQL首次登陆默认必须修改密码后才能操作数据库;
入果不修改直接操作就会报错提醒你修改,如图所示:
修改密码:
# 修改密码
ALTER USER 'root'@'localhost' IDENTIFIED BY 'your password';
# 刷新权限
flush privileges;
# 退出登录
quit
测试登录
# 登录数据库
mysql -uroot -p
# 自行输入密码,登陆成功如图所示
配置远程登录
在配置之前先查看下现在所有的用户
登录数据库后
# 选择数据库
use mysql;
# 从user表中获取用户及其用户地址
select User, Host from mysql.user;
授权
创建远程连接用户并授权
# 创建远程连接用户并授权
grant all privileges on *.* to 'root'@'192.168.0.1' identified by 'password' with grant option;
解析:
grant :授权
all privileges :所有权限
on:用于指定数据库和表
*.:前一个*之数据库名,后一个*是表名 ,*则代表全部
’root’@‘192.168.0.1’:@前的是用户,例如这里就是root用户;@后的引号代表指定地址:如192.168.0.1就是指定这个ip登录,其他的ip无法登陆;也可以换成localhost,代表只能本地登录即*‘root’@‘localhost’;还可以换成%,表示任意ip都可以登录即’root’@’%’**
***注意:***该命令不仅仅是指定已存在用户的访问权限,还可以直接创建新用户并授权
为了方便权限划分,我在这里不授权root用户进行远程登录,而是另外新建一个账户并指定授权一个数据库,SQL命令如下:
# 创建数据库
create database question_bank default character set utf8 collate utf8_general_ci;
# 创建用户(ques_bank)并授权数据库( question_bank)
grant all privileges on question_bank.* to 'ques_bank'@'%' identified by 'password' with grant option;
# 刷新权限
flush privileges;
测试
1)先在云服务器中检查用户表的存在
select User, Host from mysql.user;
2)windows远程登录测试
# 命令行连接
mysql -h 119.29.176.133 -P 3306 -uques_bank -p
解析:
-h:后跟ip地址
-P:注意这里是大写的P,后跟端口号(一般默认为3306)
-u:后跟访问用户(这里是ques_bank)
-p:注意这里是小写p,表示输入密码,当然也可直接把密码跟在后面可以直接登录,但这样会不安全,mysql也会给出警告
3)登录后检查数据库权限
# 打印所有数据库
show databases;
可以看到在windows端登录可以看到的数据出只有必要的信息数据库之外就只有question_bank这个数据库了,与我之前授权的无出入。
至此为止,腾讯云的MySQL的安装配置,远程连接全部完成。可以将改数据库做作为云端数据库进行项目开发了。
内容总结
以上是互联网集市为您收集整理的腾讯云CentOS系统安装MySQL全部内容,希望文章能够帮你解决腾讯云CentOS系统安装MySQL所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。