一、mysql简介
CentOS7.0默认的是Mariadb,至于Mariadb是啥?通过百度百科得知如下:
MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可 MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品。在存储引擎方面,使用XtraDB(英语:XtraDB)来代替MySQL的InnoDB。 MariaDB由MySQL的创始人Michael Widenius(英语:Michael Widenius)主导开发,他早前曾以10亿美元的价格,将自己创建的公司MySQL AB卖给了SUN,此后,随着SUN被甲骨文收购,MySQL的所有权也落入Oracle的手中。MariaDB名称来自Michael Widenius的女儿Maria的名字
二、卸载掉原有mysql
因为mysql数据库在Linux上实在是太流行了,所以目前下载的主流Linux系统版本基本上都集成了mysql数据库在里面,我们可以通过如下命令来查看我们的操作系统上是否已经安装了mysql数据库
[root@xiaoluo ~]# rpm -qa | grep mysql // 这个命令就会查看该操作系统上是否已经安装了mysql数据库
有的话,我们就通过 rpm -e 命令 或者 rpm -e --nodeps 命令来卸载掉
[root@xiaoluo ~]# rpm -e mysql // 普通删除模式 [root@xiaoluo ~]# rpm -e --nodeps mysql // 强力删除模式,如果使用上面命令删除时,提示有依赖的其它文件,则用该命令可以对其进行强力删除
在删除完以后我们可以通过 rpm -qa | grep mysql 命令来查看mysql是否已经卸载成功!!
三、通过yum来进行mysql的安装
我是通过yum的方式来进行mysql的数据库安装,首先我们可以输入 yum list | grep mysql 命令来查看yum上提供的mysql数据库可下载的版本:
[root@xiaoluo ~]# yum list | grep mysql
就可以得到yum服务器上mysql数据库的可下载版本信息:
[root@localhost wang]# yum list | grep mysql
(注意:安装mysql时我们并不是安装了mysql客户端就相当于安装好了mysql数据库了,我们还需要安装mysql-server服务端才行)
yum install mysql yum install mysql-server yum install mysql-devel
 
此时我们可以通过如下命令,查看刚安装好的mysql-server的版本
[root@localhost wang]# rpm -qi mysql-server
package mysql-server is not installed
CentOS 7的yum源中没有正常安装mysql时的mysql-sever文件,需要去官网
1,首先需要去下载rpm包:
镜像地址:http://mysql.mirrors.pair.com/Downloads/
wget http://mysql.mirrors.pair.com/Downloads/MySQL-5.1/MySQL-server-community-5.1.72-1.rhel5.x86_64.rpm
wget http://mysql.mirrors.pair.com/Downloads/MySQL-5.1/MySQL-devel-community-5.1.72-1.rhel5.x86_64.rpm
wget http://mysql.mirrors.pair.com/Downloads/MySQL-5.1/MySQL-client-community-5.1.73-1.rhel5.i386.rpm
glibc是GNU发布的libc库
rpm -qa | grep glibc
2,开始安装server端:
yum remove mysql-libs
rpm -ivh MySQL-server-community-5.1.72-1.rhel5.x86_64.rpm
【linux】提示"libc.so.6: version `GLIBC_2.14' not found",系统的glibc版本太低
到http://www.gnu.org/software/libc/下载最新版本
【结果证明上面方式是错误的 】
从最新版本的linux系统开始,默认的是 Mariadb而不是mysql!
四、Mariadb数据库的初始化及相关配置
2. 安装数据库
[root@localhost wang]# yum install mariadb*
3. 启动数据库
service mariadb start
[root@localhost wang]# service mariadb start Redirecting to /bin/systemctl start mariadb.service
如果启动那个有问题执行
systemctl status mariadb.service
查看是否启成功
[root@localhost wang]# ps -ef |grep mysqld mysql 12171 1 0 09:19 ? 00:00:00 /bin/sh /usr/bin/mysqld_safe --basedir=/usr mysql 12267 12171 0 09:19 ? 00:00:00 /usr/libexec/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib64/mysql/plugin --log-error=/var/lib/mysql/localhost.localdomain.err --pid-file=localhost.localdomain.pid root 12396 11769 0 09:23 pts/0 00:00:00 grep --color=auto mysqld [root@localhost wang]#
4. 修改root密码
5. 登录数据库
6. 允许Root用户远程连接
遇到的问题:
MariaDB [mysql]> grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option;
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
7. 修改数据存放目录
mysql, MariaDB 的默认数据存放在 /var/lib/mysql/ 目录下,如果不想放到此处,或者是想要程序和数据分离,或者是磁盘原因,需要切换到其他路径,则可以通过修改 datadir系统变量来达成目的.
[plain] view plaincopy
然后 按 i 进入编辑模式,可以插入相关内容.使用键盘的上下左右键可以移动光标, 编辑完成以后,按 ESC 退出编辑模式(进入命令模式), 然后输入命令:wq 保存并退出
[sql] view plaincopy
其中,也只有 datadir 和 socket 比较重要; 而 default-character-set 是 mysql 自己认识的,而 mariadb5.5 就不认识,相当于变成了 character_set_server
7.1 创建慢查询日志文件
既然上面指定了慢查询日志文件,我后来看了下MariaDB的err日志,发现MariaDB不会自己创建该文件,所以我们需要自己创建,并修改相应的文件权限(比如 mysql 采用 mysql用户,可能我们使用 root用户创建的文件,此时要求慢查询日志文件对mysql用户可读可写就行。)