🦄 2024 独立开发者训练营,一起创业!查看介绍 / 立即报名(剩余10个优惠名额) →

路径(十三):在本地 CentOS 7 上搭建 Web 开发环境 — 数据库管理系统 MariaDB / MySQL

Web 应用需要数据库管理系统去管理它们的数据,这个系统可以是 MySQL、PostgreSQL,SQLite 等等。安装哪个要看你的 Web 应用的需求,有些项目可能支持多种数据库系统。下面我们先去安装一个 MySQL 。

MariaDB / MySQL

MariaDB 是 MySQL 的一个分支,是加强版的 MySQL,主要是是由社区成员贡献开发。领头开发 MariaDB 的是 MySQL 的创始人 Michael Widenius,因为 MySQL 之前卖给了 sun 公司, sun 又被 Oracle 收购,MySQL 的开发又很封闭,所以就有了社区版的 MySQL ,也就是 MariaDB,它可以完全取代 MySQL。Maria 是 Michael Widenius 女儿的名字。

CentOS 7.0 已经用 MariaDB 替换掉了 MySQL,所以默认你只能用包管理工具安装 MariaDB。

删除系统自带的 MariaDB

yum remove mariadb-libs -y

安装 MariaDB

yum install mariadb100u-server mariadb100u -y

安装完成以后,查看 mariadb 的状态:

service mariadb status

返回:

service mariadb status
Redirecting to /bin/systemctl status  mariadb.service
mariadb.service - MariaDB database server
   Loaded: loaded (/usr/lib/systemd/system/mariadb.service; disabled)
   Active: inactive (dead)
...

在 Active 后面显示的是 inactive ,表示服务是停止的状态。

启动 MariaDB

用 service 命令启动 mariadb 服务。

service mariadb start

自动启动

想开机以后自动启动 mariadb 服务,用 systemctl 的 enable 命令:

systemctl enable mariadb.service

返回:

ln -s '/usr/lib/systemd/system/mariadb.service' '/etc/systemd/system/multi-user.target.wants/mariadb.service'

再查看一下 MariaDB 的状态,会返回:

mariadb.service - MariaDB database server
   Loaded: loaded (/usr/lib/systemd/system/mariadb.service; enabled)
   Active: active (running) since 一 2015-01-26 00:20:29 UTC; 10s ago

注意在 Loaded 后面显示的是 enabled,表示 mariadb.service 已经被自动加载了。

执行数据的安全设置

安装完 MariaDB 以后,可以执行一下安全设置,这样可以为 root(MariaDB 的超级管理员)用户添加密码,删除匿名用户还有 test 数据库等等。执行:

mysql_secure_installation

会问你很多问题:

  1. Enter current password for root (enter for none):  
    输入当前 root 用户的密码
  2. Set root password? [Y/n]
    想要设置 root 用户的密码吗?
  3. New password:
    输入 root 用户的新密码
  4. Re-enter new password:
    重新输入为 root 用户设置的密码
  5. Remove anonymous users? [Y/n]
    要删掉匿名用户吗?
  6. Disallow root login remotely? [Y/n]
    要禁用 root 用户远程登录吗?
  7. Remove test database and access to it? [Y/n]
    想要删掉 test 这个数据库吗?
  8. Reload privilege tables now? [Y/n]
    现在就要重新载入权限吗?

测试

先登录数据库的控制台,注意用的是 mysql 命令。

mysql -u root -p

再输入为 root 用户设置的密码。然后执行:

show databases;

会显示数据库系统里的所有的数据库。

+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
+--------------------+
3 rows in set (0.00 sec)
如果你不得不用 MySQL,可以手工安装 MySQL 社区的仓库,rpm -Uvh http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm,然后再用 yum 去安装 MySQL,过程跟安装 MariaDB 基本一样。
路径 CentOS MariaDB MySQL

评论

[vagrant@localhost ~]$ yum install mariadb-server mariadb -y
Loaded plugins: fastestmirror
You need to be root to perform this command.
[vagrant@localhost ~]$ sudo yum install mariadb-server mariadb -y
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors.btte.net
* epel: mirrors.yun-idc.com
* extras: mirrors.pubyun.com
* ius: ftp.neowiz.com
* updates: mirrors.btte.net
Setting up Install Process

昊天,你看出现的错误里面,能找到线索,比如 You need to be root to perform this command ,意思是,你需要 root 权限才能执行这个命令。你当前 ssh 到服务器的用户是 vagrant ,这里显示的 [vagrant@localhost ~] ,所以,你需要在执行需要 root 权限的命令的时候,在命令的前面加上 sudo 。或者,你可以把身份切换到 root,用 su 命令,提示你输入 root 用户的密码,你的 vagrant 的 root 用户的密码是 vagrant 。这样你就变成了 [root@localhost ~] 。

Updated By: mysql-libs-5.1.73-3.el6_5.x86_64 (base)
libmysqlclient.so.16(libmysqlclient_16)(64bit)
Error: Package: 1:mariadb100u-server-10.0.15-1.ius.centos7.x86_64 (ius)
Requires: libz.so.1(ZLIB_1.2.3.3)(64bit)
You could try using --skip-broken to work around the problem
You could try running: rpm -Va --nofiles --nodigest
还是不行 重装 的

ok

我用http://my.oschina.net/iluckyboy/blog/215949这个方法配置的,您安装的yum install mariadb100u-server mariadb100u -y两个包名是啥意思?

是数据库,跟 MySQL 是一样的东西。

请教下。进到数据库里怎么出来啊?他是个文件吗?试了 q 不行。

微信好友

用微信扫描二维码,
加我好友。

微信公众号

用微信扫描二维码,
订阅宁皓网公众号。

240746680

用 QQ 扫描二维码,
加入宁皓网 QQ 群。

统计

15260
分钟
0
你学会了
0%
完成

社会化网络

关于

微信订阅号

扫描微信二维码关注宁皓网,每天进步一点