1. 卸载掉原有mysql

因为mysql数据库在Linux上实在是太流行了,所以目前下载的主流Linux系统版本基本上都集成了mysql数据库在里面,我们可以通过如下命令来查看我们的操作系统上是否已经安装了mysql数据库

# rpm -qa | grep -i mysql  // 通过这句命令查看你的服务器上是否安装mysql

[root@richie log]# rpm -qa | grep -i mysql
mysql-5.1.73-8.el6_8.x86_64
mysql-libs-5.1.73-8.el6_8.x86_64
perl-DBD-MySQL-4.013-3.el6.x86_64
mysql-server-5.1.73-8.el6_8.x86_64

  显示安装了 前面几个包,我们停止mysqld

# service mysqld stop

删除命令:

如果有的话 我们可以通过rpm -e 或rpm -e --nodeps 命令卸载原来的额mysql

# rpm -e mysql      // 普通删除mysql的方式

# rpm -e mysql   --nodeps   // 强制删除mysql的方式 如果使用上面命令删除时,提示有依赖的其它文件,则用该命令可以对其进行强力删除

rpm -ev mysql-5.1.73-8.el6_8
rpm -ev mysql-libs-5.1.73-8.el6_8.x86_64 等等....

 找到之前版本mysql目录,并删除mysql老版本 mysql的文件和库

find / -name mysql 

/var/lib/mysql
/var/lib/mysql/mysql
/usr/lib64/mysql

  删除对应的mysql目录

rm -rf /var/lib/mysql
rm -rf /var/lib/mysql
rm -rf /usr/lib64/mysql

  有时候卸载后/etc/my.cnf 不会删除 需要进行手工删除

rm -rf /etc/my.cnf

  

如果删除完成  我们可以通过前面的命令查看是否删除成功。

rpm -qa |grep -i mysql

没有表示已经彻底删除了,接下来直接安装mysql即可。

2. 配置yum源 更新yum

首先备份/etc/yum.repos.d/CentOS-Base.repo

mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup

下载对应版本repo文件, 放入/etc/yum.repos.d/(操作前请做好相应备份)

运行以下命令生成缓存

yum clean all
yum makecache
yum update

3、通过yum来进行mysql的安装

我是通过yum的方式来进行mysql的数据库安装,首先我们可以输入 yum list | grep mysql 命令来查看yum上提供的mysql数据库可下载的版本:

# yum list | grep mysql

就可以得到yum服务器上mysql数据库的可下载版本信息:

  一般查看到的都是mysql 5.1

然后我们可以通过输入 yum install -y mysql-server mysql mysql-devel 命令将mysql mysql-server mysql-devel都安装好(注意:安装mysql时我们并不是安装了mysql客户端就相当于安装好了mysql数据库了,我们还需要安装mysql-server服务端才行)

# yum install -y mysql-server mysql mysql-deve

  此时我们可以通过如下命令,查看刚安装好的mysql-server的版本

# rpm -qi mysql-server

  我们安装的mysql-server并不是最新版本,如果你想尝试最新版本,那就去mysql官网下载rpm包安装就行了,至此我们的mysql数据库已经安装完成了。

4 . mysql数据库的初始化及相关配置

我们在安装完mysql数据库以后,会发现会多出一个mysqld的服务,这个是你的数据库服务,我们通过输入 service mysqld start 命令就可以启动我们的mysql服务。

注意:如果我们是第一次启动mysql服务,mysql服务器首先会进行初始化的配置,我们会看到第一次启动服务器会出现很多的提示信息,,目的是为了对我们的mysql数据库进行初始化。

后面再启动就不会有太多的信息:

[root@richie yum.repos.d]# service mysqld start
Starting mysqld: [ OK ]

  配置mysql数据库 开机启动:

  首先通过 chkconfig --list | grep mysqld 命令来查看mysql服务是不是开机自动启动

[root@richie yum.repos.d]# chkconfig --list | grep mysqld
mysqld 0:off 1:off 2:off 3:off 4:off 5:off 6:off

  我们发现我们的mysqld 服务没有开机启动 ,可以通过 chkconfig mysqld on 设置在可用的启动模式开始此服务。

[root@richie yum.repos.d]# chkconfig mysqld on
[root@richie yum.repos.d]# chkconfig --list | grep mysqld
mysqld 0:off 1:off 2:on 3:on 4:on 5:on 6:off

  在初始化mysql的时候我们可以看到

/usr/bin/mysqladmin -u root password 'new-password'  // 为root账号设置密码

  [root@richie~]# mysqladmin -u root password 'root'  // 通过该命令给root账号设置密码为 root

此时我们就可以通过 mysql -u root -p 命令来登录我们的mysql数据库了

5 mysql 数据库的主要配置文件

1./etc/my.cnf 这是mysql的主配置文件

我们可以查看一下这个文件的一些信息

[root@richie etc]# ls my.cnf
my.cnf
[root@richie etc]# cat my.cnf
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0 [mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

  2。 /var/lib/mysql   mysql数据库的数据库文件存放位置

我们的mysql数据库的数据库文件通常是存放在了/ver/lib/mysql这个目录下

[root@richie etc]# cd /var/lib/mysql/
[root@richie mysql]# ls -l
total 20488
-rw-rw---- 1 mysql mysql 10485760 Jan 5 15:08 ibdata1
-rw-rw---- 1 mysql mysql 5242880 Jan 5 15:08 ib_logfile0
-rw-rw---- 1 mysql mysql 5242880 Jan 5 15:08 ib_logfile1
drwx------ 2 mysql mysql 4096 Jan 5 15:08 mysql
srwxrwxrwx 1 mysql mysql 0 Jan 5 15:08 mysql.sock
drwx------ 2 mysql mysql 4096 Jan 5 15:08 test

  我们可以自己创建一个数据库,来验证一下该数据库文件的存放位置

[root@richie mysql]# mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 4
Server version: 5.1.73 Source distribution Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql> create database richie
-> ;
Query OK, 1 row affected (0.00 sec) mysql> \q
Bye
[root@richie mysql]# ls -l
total 20492
-rw-rw---- 1 mysql mysql 10485760 Jan 5 15:08 ibdata1
-rw-rw---- 1 mysql mysql 5242880 Jan 5 15:08 ib_logfile0
-rw-rw---- 1 mysql mysql 5242880 Jan 5 15:08 ib_logfile1
drwx------ 2 mysql mysql 4096 Jan 5 15:08 mysql
srwxrwxrwx 1 mysql mysql 0 Jan 5 15:08 mysql.sock
drwx------ 2 mysql mysql 4096 Jan 5 15:13 richie
drwx------ 2 mysql mysql 4096 Jan 5 15:08 test

  3. /var/log mysql数据库的日志输出存放位置

我们的mysql数据库的一些日志输出存放位置都是在/var/log这个目录下

[root@richie mysql]# cd /var/log/
[root@richie log]# ls
audit cron ecs_network_optimization.log messages nginx spooler
boot.log dmesg httpd multi-nic-util ntp.log tallylog
btmp dmesg.old lastlog mysqld.log ntpstats wtmp
cloud-init.log dracut.log maillog

  

其中mysqld.log 这个文件就是我们存放我们跟mysql数据库进行操作而产生的一些日志信息,通过查看该日志文件,我们可以从中获得很多信息

因为我们的mysql数据库是可以通过网络访问的,并不是一个单机版数据库,其中使用的协议是 tcp/ip 协议,我们都知道mysql数据库绑定的端口号是 3306 ,所以我们可以通过 netstat -anp 命令来查看一下,Linux系统是否在监听 3306 这个端口号:

[root@richie log]# netstat -anp|more
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program na
me
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 13648/mysqld tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 1843/httpd tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 2291/sshd tcp 0 96 172.17.101.172:22 122.71.240.33:1449 ESTABLISHED 2128/sshd tcp 0 0 172.17.101.172:40014 106.11.68.13:80 ESTABLISHED 1322/AliYunDun udp 0 0 0.0.0.0:68 0.0.0.0:* 1094/dhclient udp 0 0 0.0.0.0:68 0.0.0.0:* 739/dhclient udp 0 0 172.17.101.172:123 0.0.0.0:* 2320/ntpd udp 0 0 127.0.0.1:123 0.0.0.0:* 2320/ntpd udp 0 0 0.0.0.0:123 0.0.0.0:*

  结果如上所示,Linux系统监听的3306端口号就是我们的mysql数据库!

6 。阿里云ECS自检数据库远程连接问题

购买阿里云ecs服务器后,很多人会选择自己搭建系统,有的人会选择云数据库,有的人会用自己搭建的数据库,但是自己搭建完成后,用navicat想要连接的自己的数据库时,却发生了这样的错误

  

这是由于远程IP没有登录权限,root用户默认只能在localhost也就是只能在本机登录,需要设置允许其他IP登录权限。

解决方法:

在服务器内部登录数据库,然后执行:

grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option;

表示让所有的ip都能访问该数据库,并操作数据库的任何对象。

其中:

*.* 第一个*是指数据库

*代表所有数据库

第二个*指数据库对象

*代表数据库中所有对象

'root'@'%' root是制定要授权的数据库用户

%代表允许登录的IP (如:1.1.1.1)

123456是你的数据库密码

执行完毕后执行 flush privileges; 刷新权限即可登录。

通过yum安装mysql数据的更多相关文章

  1. [转]Centos6.5使用yum安装mysql—配置MySQL允许远程登录

    一.mysql安装 第1步.yum安装mysql[root@stonex ~]#  yum -y install mysql-server安装结果:Installed:    mysql-server ...

  2. Fedora14使用yum安装mysql

    linux下使用yum安装mysql   1.安装 查看有没有安装过:           yum list installed mysql*           rpm -qa | grep mys ...

  3. centos6 yum安装mysql 5.6 (完整版)

    使用源代码编译安装mysql还是比较麻烦,一般来说设备安装时请网络同事临时开通linux上网,通过yum网络实现快速安装,或配置yum仓库进行内网统一安装. 通过网络快速安装过程如下 一.检查系统是否 ...

  4. Linux下yum安装MySQL

    写这篇文章的原因是:在刚开始使用Linux操作系统时想要搭建LAMP环境,于是开始在Google和百度上各种寻找资料,碰到了不是很多的问题后,我决定写这篇文章总结一下在Linux下yum安装MySQL ...

  5. centos7下使用yum安装mysql

    CentOS7的yum源中默认好像是没有mysql的.为了解决这个问题,我们要先下载mysql的repo源. 1. 下载mysql的repo源 wget http://repo.mysql.com/m ...

  6. 阿里云服务器Linux CentOS安装配置(三)yum安装mysql

    阿里云服务器Linux CentOS安装配置(三)yum安装mysql 1.执行yum安装mysql命令:yum -y install mysql-server mysql-devel 2.启动mys ...

  7. linux系统下yum 安装mysql的方法

    菜鸟一个,记录下yum 安装mysql的方法,给需要的朋友也做个参考吧. 弄了个新vps,想安装最新版的mysql,网上查了相关资料,记录如下: 1.安装查看有没有安装过:          yum ...

  8. centos使用yum安装mysql

    参考:http://dev.mysql.com/doc/mysql-yum-repo-quick-guide/en/ 1.增加yum数据源 (1.1)从http://dev.mysql.com/dow ...

  9. centos7通过yum安装mysql,并授权远程连接

    安装: CentOS 7的yum源中没有正常安装MySQL的mysql-sever文件,需要去官网上下载(通过安装mysql的yum容器,再通过yum安装mysql) 注:安装前,需要卸载所有的mar ...

随机推荐

  1. 快看Sample代码,速学Swift语言(1)-语法速览

    Swift是苹果推出的一个比较新的语言,它除了借鉴语言如C#.Java等内容外,好像还采用了很多JavaScript脚本里面的一些脚本语法,用起来感觉非常棒,作为一个使用C#多年的技术控,对这种比较超 ...

  2. java注解细节

    现在很多框架都使用注解了,典型的像Spring里面就可以看到大量的注解,比如@Service,@Controller这一类的都是注解.注解Annotation是java一项很重要的功能.下面就来整理一 ...

  3. Subscription wildcards(MQTT)

    想查看英文原文的请点击原文网址.本文是paho中讲述订阅通配符的.还是那句话,水平有限,如有翻译不当之处,欢迎指正. 订阅通配符   MQTT信息包含一个主题来进行区分.MQTT服务器使用主题来确定哪 ...

  4. 关于postgres中的一些宏的tips

    Postgresql作为C语言开发的代码,其中大量的运用了一些宏的操作. 因此理解这些宏很重要,然而有时候这些宏总让人很费解. 作为一个经常翻翻postgresql源码的小白,在这里做一个记录吧,方便 ...

  5. 使用angularjs实现注册表单

    本文是在学习angularjs过程中做的相应的练习 github地址 https://github.com/2016Messi/angularjs1.6-form 演示地址 https://2016m ...

  6. [译文]React v16(新特性)

    [译文]React v16(新特性) 查看原文内容 我们很高兴的宣布React v16.0发布了! 这个版本有很多长期被使用者期待的功能,包括: fragments (返回片段类型) error bo ...

  7. Java IO学习要点导图

    Java IO的一些基础知识: 导图源文件保存地址:https://github.com/wanghaoxi3000/xmind

  8. webpack 理解

    目录 关于此文 在学习webpack之前,我们先去了解它的作用 它与其他其他前端工具(gulp,grunt)有什么差别呢 安装 webpack.config.js 配置结果 webpack 开始简单配 ...

  9. bzoj 3143: [Hnoi2013]游走

    Description 一个无向连通图,顶点从1编号到N,边从1编号到M. 小Z在该图上进行随机游走,初始时小Z在1号顶点,每一步小Z以相等的概率随机选 择当前顶点的某条边,沿着这条边走到下一个顶点, ...

  10. 转载|chrome developer tool—— 断点调试篇

    断点,调试器的功能之一,可以让程序中断在需要的地方,从而方便其分析.也可以在一次调试中设置断点,下一次只需让程序自动运行到设置断点位置,便可在上次设置断点的位置中断下来,极大的方便了操作,同时节省了时 ...