阿里云Centos 7上面安装mysql教程
1 软件的基本安装过程
1 卸载已有的mysql
1.查看系统是否安装了mysql软件
rpm -qa|grep -i mysql
2.将已经安装过的软件卸载掉。注意:这样的卸载是不彻底,不过这里够用了。
yum remove '软件名'
2 准备mysql的repo
源
总结代码:
wget http://repo.mysql.com//mysql57-community-release-el7-7.noarch.rpmrpm -ivh mysql57-community-release-el7-7.noarch.rpm
==============补充start================
解释:wget默认会以最后一个符合 /
的后面的字符来命令
例如:wget http://repo.mysql.com//mysql57-community-release-el7-7.noarch.rpm下载完成的名字就是mysql57-community-release-el7-7.noarch.rpm
可以自己改变下载后的文件名:命名为
wget -O mysql.rpm http://repo.mysql.com//mysql57-community-release-el7-7.noarch.rpm
==============补充end=================
CentOS 7
的yum
源中默认是没有mysql
的。所以,为了解决这个问题我们首先下载安装mysql
的repo
源。
wget http://repo.mysql.com//mysql57-community-release-el7-7.noarch.rpm
rpm -ivh mysql57-community-release-el7-7.noarch.rpm
安装之后会获得/etc/yum.repos.d/mysql-community.repo
和/etc/yum.repos.d/mysql-community-source.repo
两个源,可以去相应的路径下查看一下。
3 安装mysql
使用代码总结:
yum install mysql-serveryum install mysql-develyum install mysql
rpm -qa | grep -i mysql
1.安装mysql-server
yum install mysql-server
2 安装mysql-devel
yum install mysql-devel
3.安装mysql
yum install mysql
安装完成之后重新检查一下安装了的mysql
软件。
rpm -qa|grep -i mysql
一般来说,只要安装mysql-server跟mysql-client 。
2 服务开关操作
service mysqld status 查看mysql当前的状态service mysqld stop 停止mysqlservice mysqld restart 重启mysqlservice mysqld start 启动mysql
3 将MySQL加入开机启动
systemctl enable mysqld
4 启动mysql服务进程
systemctl start mysqld
或者使用下面的代码:都是启动mysql服务,效果一样。
# service mysqld start 启动mysql
5 无法登录问题解决
登录root
帐号需要密码,不过我们没有。
下面是这个问题的详细解决过程
1 修改配置文件,跳过用户验证
1.在/etc/my.cnf
文件中添加skip-grant-tables。这里注意一下:我的skip-grant-tables放到了文件最后。
skip-grant-tables:的作用就是跳过了mysql的用户验证
然后直接输入mysql,不需要带任何登录参数直接回车就可以登陆上数据库;
2.重启mysql
,service mysqld restart
重启之后我们直接输入mysql即可进入mysql数据库,因为我们已经跳过了mysql数据库的用户验证。
3.使用mysql数据库
使用命令:use mysql;
4.show tables查看所有表
会发现有个user表,这里存放的就是用户名,密码,权限等等账户信息
mysql> show tables;
+---------------------------+
| Tables_in_mysql |
+---------------------------+
| columns_priv |
| db |
| engine_cost |
| event |
| func |
| general_log |
| gtid_executed |
| help_category |
| help_keyword |
| help_relation |
| help_topic |
| innodb_index_stats |
| innodb_table_stats |
| ndb_binlog_index |
| plugin |
| proc |
| procs_priv |
| proxies_priv |
| server_cost |
| servers |
| slave_master_info |
| slave_relay_log_info |
| slave_worker_info |
| slow_log |
| tables_priv |
| time_zone |
| time_zone_leap_second |
| time_zone_name |
| time_zone_transition |
| time_zone_transition_type |
| user |
+---------------------------+
31 rows in set (0.00 sec)
5.查看账户信息
执行下面的命令,可以查看用户的账户信息。
select user,authentication_string from user;
从这里我们可以看到mysql数据库中的密码是加密的,不可逆的。一旦忘记了就找不回来了的。
6.修改root用户的密码
我们可以执行下面的命令修改root用户的密码:
update mysql.user set authentication_string=password('your password') where user='root';
7.修改密码之后,删除所有权限
flush privileges;
8.退出数据库
exit
9.恢复/etc/my.cnf文件
恢复/etc/my.cnf
,将skip-grant-tables
删除或者注释掉。
10.重启mysql
,service mysqld restart
service mysqld restart
到此为止我们就解决了mysql安装之后登录不知道密码的问题。现在一切都正常了。
11.验证一下是否成功解决了登录问题
rpm -qa|grep -i mysql
可以看到已经完美的解决了。一路下来还真不容易啊。
解决登录问题中的代码整理:
vim /etc/my.cnf //修改配置
skip-grant-tables 加入到my.cnf 文件的最后
service mysqld restart //修改配置后重启mysql服务
mysql //跳过用户验证后,直接就能登录 mysql> use mysql; //切换数据库 mysql> show tables; //查看所有表 mysql> select user,authentication_string from user; //查看权限信息 mysql> update mysql.user set authentication_string=password('your password') where user='root'; //修改密码 mysql> flush privileges; //刷新让修改生效 mysql> exit //退出mysql [root@iz2ze6adlpez0gy7j13vrmz ~]# vim /etc/my.cnf //还原my.cnf文件配置,去掉最后的skip-grant-tables [root@iz2ze6adlpez0gy7j13vrmz ~]# cat /etc/my.cnf //查看是否还原成功 [root@iz2ze6adlpez0gy7j13vrmz ~]# service mysqld restart //重启mysql服务 [root@iz2ze6adlpez0gy7j13vrmz ~]# mysql -uroot -proot //使用修改的密码登录
6.重置密码问题
下面顺便讲解一下这个问题:
安装完mysql 之后,登陆以后,不管运行任何命令,总是提示这个错误:
You must reset your password using ALTER USER statement before executing this statement
处理步骤为:依次执行下面三条代码。
SET PASSWORD = PASSWORD('your new password'); ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER; flush privileges;
这里要注意的是your new password 必须包含数字,字母包含大小写,标点符号。不然好像是不能通过的。
完成以上三步退出再登,使用新设置的密码就行了,以上除了 your new password 需要修改成新密码外,其他原样输入即可。
7.解决远程客户端无法连接MySQL数据库
现在我们想要在本地,远程访问我们阿里云服务器上的mysql数据库。我使用的是navicat 软件,但是发现一直连接不上。
出现这个问题的原因是因为:我的实例是专有网络类型。要想能够远程访问,需要对外开放MySQL的端口3306.
下面演示如何对外开放3306端口。
配置完成之后,我再次去尝试远程连接MySQL数据库。
不幸的是,这次还是失败了:这次报的错误如下:
错误代码是1130: -Host xxx.xxx.xxx.xxx is not allowed to connect to this MySQL server
首先我想的应该是数据的权限不足的问题;
通过查阅资料发现了这篇文章:解决远程连接mysql错误1130的方法https://www.aliyun.com/jiaocheng/136440.html
解决方法如下:
具体说就是:在本机登入mysql后,更改 “mysql” 数据库里的 “user” 表里的 “host” 项,从”localhost”改称'%'。。
mysql -u root -p mysql>use mysql; mysql>select host,user from user; mysql>update user set host = '%' where user ='root'; mysql>flush privileges; mysql>select host,user from user;
第一句是以权限用户root登录
第二句:选择mysql库
第三句:查看mysql库中的user表的host值(即可进行连接访问的主机/IP名称)
第四句:修改host值(以通配符%的内容增加主机/IP地址),当然也可以直接增加IP地址
第五句:刷新MySQL的系统权限相关表
第六句:再重新查看user表时,有修改。。
重起mysql服务即可完成。service mysqld restart。
实际开发中:我们更多的还是推荐创建用户,然后使用创建的用户连接数据库。 root用户的权限太大了。
通过上面的处理我们再一次来尝试远程连接mysql数据库
到此MySQL数据库在阿里云esc centos 7 上的安装就算是大功告成了。
8.补充知识点
1 一些常用的命令
1 检查MySQL是否已经安装
yum list installed | grep mysql
2 已经安装使用yum方式卸载
yum -y remove mysql-libs.x86_64
3 下载 MySQL Yum Repository
wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
4 添加 MySQL Yum Repository 到你的系统 repository 列表中
yum localinstall mysql-community-release-el7-5.noarch.rpm
5 验证下是否成功添加到了你的系统repository 列表中
yum repolist enabled | grep "mysql.*-community.*"
6 查看MySQL版本
yum repolist all | grep mysql
7.查看当前的启动的 MySQL 版本
yum repolist enabled | grep mysql
8 通过yum来安装MySQL
yum install mysql-community-server
9.查看MySQL 的安装目录
whereis mysql
10.启动MySQL服务
systemctl start mysqld 或者 service mysqld start
11.关闭MySQL服务
systemctl stop mysqld 或者 service mysqld stop
12.查看MySQL服务状态
systemctl status mysqld 或者 service mysqld status
13.重启MySQL服务
service mysqld restart
14.使用命令 pidof mysqld 命令来查看mysql 的启动状态如图所示:如果显示PID说明程序启动,不显示PID即为程序没有启动。
pidof mysqld
阿里云Centos 7上面安装mysql教程的更多相关文章
- 阿里云,CentOS下yum安装mysql,jdk,tomcat
首先说明,服务器是阿里云的,centos6.3_64位安全加固版.首先需要登陆进来,使用的是putty,因为最初的时候,Xshell登陆会被拒绝. 0. 创建个人文件夹 # 使用 yum 安装tomc ...
- 阿里云centos 7上面安装mysql5.7的详细步骤!!!
前言: 网上太多的linux 的安装mysql教程,很多教程不全或者因为环境不一致导致无法成功安装,以下是亲测的可行性的方法,请参考. 步骤: Centos7操作系统YUM库列表里默认不再提供MySQ ...
- 在阿里云Linux服务器上安装MySQL
申请阿里云Linux服务器 昨天在阿里云申请了一个免费试用5天的Linux云服务器. 操作系统:Red Hat Enterprise Linux Server 5.4 64位. CPU:1核 内存:5 ...
- 阿里云服务器CentOS6.9安装Mysql
上篇讲了CentOS6.9安装tomcat,这篇来讲mysql的安装 1.查看CentOS是否安装了MySQL yum list installed | grep mysql //查看CentOS是否 ...
- [Linux] - 阿里云CentOS 6.5 安装Docker
因为阿里云的CentOS 6.5版本默认内核kernel版本是2.6的,比较低.安装docker的后,运行不了. 步骤: 1.使用命令更新: yum update 2.安装Docker.这里忽略500 ...
- 阿里云ECS服务器Ubuntu安装MySQL并远程访问
root账户登录服务器Ubuntu16.04 apt-get update apt-get install mysql-server mysql-client; 安装时会让你设置root密码,输入2次 ...
- 记录阿里云ECS(Centos7.4)安装mysql 8.0.X服务
#*.rpm介绍 大多数二进制rpm包都包含在名称中倒数第二个字段中编译rpm的体系结构..rpm软件包有那么几种 *.src.rpm 源程序包,要先通过编译才能安装 *.noarch.rpm 该包适 ...
- 阿里云centos系统上安装ftp
最近需要在一台阿里云的云服务器上搭建FTP服务器,在这篇博文中分享一下我们根据实际需求进行的一些配置. ftp软件用的是vsftpd. vsftpd是一款在Linux发行版中最受推崇的FTP服务器程序 ...
- linux(centos)上安装mysql教程,为需要远程登录的用户赋予权限
最近把之前学生时代的win server换成了linux(centos)系统,因为win对于部署一些项目时候比较麻烦,直接入正题 1.准备阶段 我使用xshell工具管理服务器,相应下载和安装自行百度 ...
随机推荐
- web集群时session同步的3种方法
在做了web集群后,你肯定会首先考虑session同步问题,因为通过负载均衡后,同一个IP访问同一个页面会被分配到不同的服务器上,如果session不同步的话,一个登录用户,一会是登录状态,一会又不是 ...
- Ubuntu在用root账户使用xftp连接时提示拒绝连接
一般来说Linux不允许使用root账户连接,修改配置 vi /etc/ssh/sshd_config #Authentication: LoginGraceTime PermitRootLogin ...
- Qt绘制简单的风向玫瑰图代码
1.绘制简单的风向玫瑰图代码2.主要使用QPainter3.在子widget上绘制需要使用widget监视事件 eventfilter update();//更新界面 //镜头12 QPainter ...
- linux虚拟机安装mysql(Mysql-5.7.10)
注:MySQL5.5版本开始弃用了常规的configure编译方法,通过cmake来编译.需要下载安装cmake编译器.boost库.ncurses库.GNU分析器生成器bison 1. 安装基础环境 ...
- 使用 GPU 加速计算
U-n-i-t-y 提供了 [Compute Shader][link1] 来使得我们可以将大量的复杂重复的计算交给并行的 GPU 来处理,正是由于并行原因,这样就可以大大加快计算的速度,相比在 CP ...
- win7系统电脑显示windows副本不是正版怎么办
win7系统电脑显示windows副本,可以:在开始输入框中输入cmd——以管理员权限运行——在命令行中输入SLMGR -REARM,——重启.
- Redhat系的Linux系统里,网络主要设置文件简介【转载】
以下是原文地址,转载请指明出处: http://blog.chinaunix.net/uid-26495963-id-3230810.html 一.配置文件详解在RHEL或者CentOS等Redhat ...
- js自定义对象 (转)
原文地址:https://sjolzy.cn/js-custom-object.html 29 March 2010 9:53 Monday by 小屋 javascript进阶之对象篇 一,概述 在 ...
- python 3中 的subprocess
commands好像python3.6被去除了,它现在被subprocess替代了 FUNCTIONS getoutput(cmd) Return output (stdout or stderr) ...
- vscode 遇到设置问题
// 控制是否在新窗口中打开文件. // - default: 除了从软件内部选择的文件 (如,从“文件”菜单选择),其他所有文件都将在新窗口中打开 // - on: 文件将在新窗口中打开 // - ...