经过yum来进行mysql数据库的安装,能够将跟mysql相关的一些服务、jar包都给咱们安装好,省去了不少没必要要的麻烦。node
一、卸载掉原有的mysqlmysql
首先查看咱们的操做系统上是否已经安装了mysql数据库linux
[root@xiangsilan ~]# rpm -qa | grep mysqlsql
有的话,就经过 rpm -e 命令 或者 rpm -e --nodeps 命令来卸载掉数据库
[root@xiangsilan ~]# rpm -e mysql // 普通删除模式
[root@xiangsilan ~]# rpm -e --nodeps mysql // 强力删除模式,若是使用上面命令删除时,提示有依赖的其它文件,则用该命令能够对其进行强力删除服务器
在删除完之后能够经过 rpm -qa | grep mysql 命令来查看mysql是否已经卸载成功。网络
二、经过yum来进行mysql的安装tcp
(若是安装失败,建议切更改yum源到阿里云ide
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup阿里云
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo
yum clean all && yum makecache
)
先查看yum上提供的mysql数据库可下载的版本
[root@xiangsilan ~]# yum list | grep mysql
再将mysql mysql-server mysql-devel都安装好
[root@xiangsilan ~]# yum install -y mysql-server mysql mysql-devel
安装完成
再查看刚安装好的mysql-server版本
[root@xiangsilan ~]# rpm -qi mysql-server
三、mysql数据库的初始化及相关配置
安装完mysql数据库以后,会多出一个mysqld的服务,就是数据库服务。
启动mysql服务(第一次启动mysql服务,mysql服务器会进行初始化配置,会提示不少信息,当再次启动mysql服务时就不会有这么多信息了)
[root@xiangsilan mysql]# service mysqld start // 启动mysql服务
[root@xiangsilan ~]# service mysqld restart // 重启mysql服务
查看mysql服务是否是开机自动启动
[root@xiangsilan ~]# chkconfig --list | grep mysqld
mysqld 0:关闭 1:关闭 2:关闭 3:关闭 4:关闭 5:关闭 6:关闭
若是不是开机自动启动,能够设置成开机自动启动,省得每次要去手动启动
[root@xiangsilan ~]# chkconfig mysqld on
[root@xiangsilan ~]# chkconfig --list | grep mysqld
mysqld 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
安装完以后,会有一个root管理员帐号,这时root帐号没有设置密码
给mysql的root帐号设置密码
[root@xiangsilan ~]# mysqladmin -u root password '123456'
而后再登陆mysql数据库
[root@xiangsilan ~]# mysql -u root -p
五、mysql数据库的主要配置文件
/etc/my.cnf是mysql的主配置文件
/var/lib/mysql是mysql数据库的数据库文件存放位置
其中mysql和test是mysql数据库安装时默认的两个数据库文件
建立一个数据库,验证一下数据库文件存放的位置
mysql数据库的日志输出存放位置在/var/log
其中mysqld.log这个文件就是存放跟mysql数据库进行操做而产生的一些日志信息
由于mysql数据库是能够经过网络访问的,并非一个单机版数据库,使用的协议是tcp/ip协议,mysql数据库绑定的端口号是3306,因此能够经过netstat -anp来查看linux系统是否在监听3306这个端口号
验证成功,linux系统监听的3306端口号就是mysql数据库。
设置linux服务器中的mysql容许远程访问
-- 建立用户、密码及权限范围 第一个 roo t为用户名 @后为适用的主机,‘%’表示全部电脑均可以访问链接,第二个 root 为密码
例如:
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.0.2' IDENTIFIED BY 'root' WITH GRANT OPTION;
mysql> grant all privileges on *.* to 'root' @'%' identified by '123456';
-- 当即生效
mysql> flush privileges;