前言

   在我们使用Linux的过程中,可能会使用到数据库。那么,数据库的安装与配置就是我们需要掌握的了~所以呢,这篇博客小编就来给大家唠唠数据库的安装与配置。

说到编译安装,小编脑海里浮现的第一个方法就是yum源安装(见实验一),毕竟,我们使用最多的安装方法就是这个了~当然,我们还有别的方法,比如二进制安装(见实验二),所以接下来我们就来详细说说这两种方法。

实验一 yum源安装MySQL和开启设置服务

  首先,我们来看看使用yum源安装MySQL的优缺点:

  优点:安装方便快捷,安装方式简单

  缺点:太过于死板,定死了各个文件的位置

接下来,我们就开始我们的实验:

1、打开官方网站,上边有各种版本的yum源,找到自己想要的版本设置yum源

官网:https://downloads.mariadb.org/mariadb/repositories/

如果没有网络的话,就使用光盘里的yum源安装即可,都是一样的~

2、如果我们使用官网上的版本,就要按照官网的提示来配置我们的yum源,接下来,我们就以上图选择的版本来安装。

[root@centos7 ~]# vim /etc/yum.repos.d/centos7.repo [mariadb]

name = MariaDB

baseurl = http://yum.mariadb.org/10.2/centos7-amd64

gpgcheck=0

编辑好yum源以后,记得使用"yum clean all"清除缓存。

3、我们在此使用光盘中的yum源安装,如果大家有兴趣使用官网的源,可以参照上一步的配置,接下来的安装过程也都是一样的~

yum安装和开启服务

 [root@centos7 yum.repos.d]# yum install mariadb-server -y    //安装mariadb
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
Resolving Dependencies
--> Running transaction check
---> Package mariadb-server.x86_64 :5.5.-.el7 will be installed
--> Finished Dependency Resolution Dependencies Resolved =====================================================================================================================================
Package Arch Version Repository Size
=====================================================================================================================================
Installing:
mariadb-server x86_64 :5.5.-.el7 base M Transaction Summary
=====================================================================================================================================
Install Package Total download size: M
Installed size: M
Downloading packages:
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Installing : :mariadb-server-5.5.-.el7.x86_64 /
Verifying : :mariadb-server-5.5.-.el7.x86_64 / Installed:
mariadb-server.x86_64 :5.5.-.el7 Complete!
[root@centos7 yum.repos.d]# systemctl start mariadb //开启服务
[root@centos7 yum.repos.d]# ss -nutl //查看服务端口开启状态
Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port
udp UNCONN *: *:*
udp UNCONN 127.0.0.1: *:*
udp UNCONN *: *:*
udp UNCONN ::: :::*
tcp LISTEN *: *:*
tcp LISTEN *: *:*
tcp LISTEN *: *:*
tcp LISTEN 127.0.0.1: *:*
tcp LISTEN 127.0.0.1: *:*
tcp LISTEN ::: :::*
tcp LISTEN ::: :::*
tcp LISTEN ::: :::*
tcp LISTEN ::: :::*

查询端口对应的进程信息 lsof -i :3306 或 netstat -tnlp | grep 3306

开启服务后,会多一个mysql的用户,我们可以查询一下,它的家目录的作用是存放数据库,也就是存放数据库中的每个表:

之所以会生成这个用户,是因为在安装maria包时,执行了一个脚本,所以,如果我们使用二进制安装,则需手动创建用户

rpm -q --scripts mariadb-server 查看这个脚本

截图只截取了一小部分,主要是为了告诉大家有创建用户的这个过程

4、执行"mysql"命令来运行数据库

首先我们将用户切换至任一普通用户:su - keer

然后执行"mysql"命令来运行数据库:

我们可以看出,我们可以匿名登录,而且即使我们切换成了普通用户,我们运行数据库以后,依然默认是root登录,可以对数据库进行查看以及删除等操作,这样无疑是很不安全的,所以就需要进行我们的下一步操作:

5、运行安全脚本

/usr/bin/mysql_secure_installation

运行过安全脚本以后,我们在用普通用户来登录试试看:

我们再来使用root登录一次,命令为:

mysql -u root -p (passwd) 密码可以直接加在后面,也可以运行后再输入

我们可以看出,这样就可以登录至数据库了,以后我们还可以创建其他账户来登录,我们的安全机制已经实现!

实验完成!

实验二:二进制安装mariadb和开启设置服务

注意:安装之前要确保自己系统上没有mariadb服务,有老版本可以先卸掉

1、rpm -qi mariadb 可以查询官网

去官网下载自己想要的版本 http://mariadb.org

在虚拟机中把下好的包上传(rz),并对其进行解包解压缩:

tar xvf mariadb-10.2.8-linux-x86_64.tar.gz -C /usr/local/

(不像编译安装一样,解包可以放在任何目录,这个二进制安装必须指定在这个目录

解压的过程略久,大家耐心等待~

2、去查看文件

cd /usr/local/ 进入解开压缩包的目录,发现mariadb的目录名字不符合要求,所以我们可以直接修改名字,也可以创建一个软连接,创建软连接命令如下:

ln -s mariadb-10.2.8-linux-x86_64/ mysql

3、创建mysql用户(很重要!一定不能忘!)

useradd -d /app/mysqldb -r -m -s /sbin/nologin mysql

4、创建修改配置文件

进入mysql文件夹,查看support-files文件夹中的内容,发现里面有我们的配置文件,但是配置文件不应该在这个目录下,应该放在/etc/mysql/下,所以,我们要创建这个目录,并把配置文件复制进去,具体的操作如下:

 [root@centos7 local]# cd mysql/
[root@centos7 mysql]# ls
bin COPYING.thirdparty data include lib mysql-test README-wsrep share support-files
COPYING CREDITS EXCEPTIONS-CLIENT INSTALL-BINARY man README.md scripts sql-bench
[root@centos7 mysql]# ls support-files/
binary-configure my-huge.cnf my-large.cnf my-small.cnf mysql-log-rotate policy wsrep_notify
magic my-innodb-heavy-4G.cnf my-medium.cnf mysqld_multi.server mysql.server wsrep.cnf
[root@centos7 mysql]# mkdir /etc/mysql
mkdir: cannot create directory ‘/etc/mysql’: File exists
[root@centos7 mysql]# cp support-files/my-huge.cnf /etc/mysql/my.cnf

接下来我们来修改配置文件:

vim /etc/mysql/my.cnf

[mysqld]

datadir = /app/mysqldb          //指定总目录,必须的

innodb_file_per_table = on         //让每一个表数据库都是一个文件,方便管理

skip_name_resolve = on             //忽略名字的反向解析,加快速度

5、执行脚本,创建系统数据库

cd /usr/local/mysql 一定要在这个目录下执行脚本,因为脚本写死了

./scripts/mysql_install_db --user=mysql --datadir=/app/mysqldb 执行脚本

完成后就会在/app/mysqldb/ 生成mysql系统数据库

6、把服务脚本复制过去

cp support-files/mysql.server /etc/init.d/mysqld

chkconfig --add mysqld 设置服务在哪个运行级别

chkconfig --list mysqld

设置完毕后,我们开启服务:

开启服务失败,我们通过提示的命令来查看失败原因:

systemctl status mysqld.service

journalctl -xe

查看过后发现,是因为我们缺少日志文件,而且这个日志文件须有读写权限,接下来我们就来创建:

7、创建配置文件

 [root@centos7 mysql]# mkdir /var/log/mariadb/
[root@centos7 mysql]# touch /var/log/mariadb/mariadb.log
[root@centos7 mysql]# chown mysql /var/log/mariadb/mariadb.log

创建完文件以后,我们再来开启一次试试看:

服务开启成功

接下来,我们来设置一下PATH:

 [root@centos7 mysql]# vim /etc/profile.d/mysql.sh
PATH=/usr/local/mysql/bin:$PATH
[root@centos7 mysql]# . /etc/profile.d/mysql.sh

8、运行安全初始化脚本,同上实验,注意路径发生了改变,现在的安全脚本路径为:/usr/local/mysql/bin/mysql_secure_installation

实验完成~

Linux上mysql的安装与配置的更多相关文章

  1. .Neter玩转Linux系列之六:Linux下MySQL的安装、配置、使用

    一.Linux安装MySQL (1)下载安装包:https://dev.mysql.com/downloads/mysql/ (2)解压并安装 命令:tar zxvf 文件名 解压完成之后,重名一下文 ...

  2. linux下Mysql 的安装、配置、数据导入导出

    MySQL是一种开放源代码的关系型数据库管理系统(RDBMS),虽然功能未必很强大,但因它的免费开源而广受欢迎. 这次,接着上一篇<CentOs minimal安装和开发环境部署>,讲下L ...

  3. windows和linux上mysql的安装

    mysql基于多平台,多版本的安装 mysql.tar.gz  链接:https://pan.baidu.com/s/1lG9BNL1mG4qbjM8xLHtrjQ 密码:s4tk MySQL 是一个 ...

  4. python-django-linux上mysql的安装和配置_20191124

    又有了阻塞了,怎么在Linux创建数据库,mysql, 我把数据库安装在Linux上, 1,sudo apt-get install mysql-server 2,ps -aux | grep 'my ...

  5. Linux上open-iscsi 的安装,配置和使用

    关于open-iscsi open-iscsi是一个实现 RFC3720 iSCSI协议的高性能initiator程序.iSCSI使得访问SAN上的存储不再只能依赖Fibre Channel,也可以通 ...

  6. linux上redis的安装与配置

    1.redis安装 wget http://download.redis.io/releases/redis-4.0.8.tar.gz tar xzf redis-4.0.8.tar.gz ln -s ...

  7. Linux上MongoDB的安装与配置

    长话短说,一共有两种方法.(我随便选了一个发行版Mint) 一.apt-get方法 官网上说的很清楚: http://docs.mongodb.org/manual/tutorial/install- ...

  8. Linux上MySQL的安装

    a.检测是否安装了mysql rpm  -qa | grep mysql b.卸载系统自带的mysql rpm -e --nodeps 卸载的包 rpm -e --nodeps mysql-libs- ...

  9. Linux上Java的安装与配置

    由于使用 yum 或者 apt-get 命令 安装 openjdk 可能存在类库不全,从而导致用户在安装后运行相关工具时可能报错的问题,所以此处我们推荐采用手动解压安装的方式来安装 JDK.具体步骤如 ...

随机推荐

  1. Mysql介绍和实践总结

    本文首先介绍mysql的安装和基本使用.进阶操作.讲解mysql的导入导出和自动备份,然后介绍安全模式修改密码和mysql的全文本搜索功能,最后记录了个人使用mysql中遇到的问题集. 开始安装: s ...

  2. 第1阶段——uboot分析之启动函数bootm命令 (9)

    本节主要学习: 详细分析UBOOT中"bootcmd=nand read.jffs2 0x30007FC0 kernel;bootm 0x30007FC0"中怎么实现bootm命令 ...

  3. poj 1882完全背包变形

    题意:给出一个上限硬币数量s,给出n套硬币价值,求一套硬币能用不大于s数量的硬币组成从1开始连续的区间价值,其中,如果其最大值相同,输出数量小的和价值小的. 思路:很明显的完全背包,纠结后面最大值相同 ...

  4. Charles 抓包

    声明:本文为依依Love博主原创文章,未经博主允许不得转载   1. 简介: 2. 安装包下载: 3. 安装并替换破解版的jar包 4.设置mac代理 5.  安装证书: 6.  设置手机抓包     ...

  5. 排序--SelectionSort 选择排序

    选择排序 no implementation 选择排序(Selection sort)是一种简单直观的排序算法.它的工作原理是每一次从待排序的元素中中选出最小(或最大)的一个元素,存放在序列的起始位置 ...

  6. sql 比较不同行不同字段值

    需求:在一个表table中有两三列,分别是"货物名称"."进货时间"."出货时间"."存放天数",货物名称和两种&quo ...

  7. Jsp与beetl的比较

    首先介绍一下模板引擎的概念,是为了使用户界面与业务数据分离而产生的,它可以生成特定格式的文档,用于网站的模板引擎,就会生成一个标准的html文档. Jsp全名是JavaServer Page,中文名叫 ...

  8. unity调用c++ dll方法介绍

    摘要 unity用的很普遍,现在很多代码还是用c++写的,需要用unity去调用c++的代码.这里介绍了一种unity调用c++ dll的方法,希望有所帮助. 我采用的软件是Visual Studio ...

  9. 201521123011 《java程序设计》 第7周学习总结

    1. 本周学习总结 参考资料: XMind 2. 书面作业 1.ArrayList代码分析 1.1 解释ArrayList的contains源代码 1.2 解释E remove(int index)源 ...

  10. 201521123111《Java程序设计》第4周学习总结

    1. 本章学习总结 1.1 尝试使用思维导图总结有关继承的知识点. 1.2 使用常规方法总结其他上课内容. Answer: - 上课还讲了tostring的使用,般toString用于返回表示对象值的 ...