在Linux中安装MariaDB并添加远程访问

最近学习到了数据库部分,因为有一台台式机一台笔记本换着用,就没有把数据库安装在本机,本来打算用之前买的虚拟空间的数据库的,结果速度太慢用起来太难受了,就把闲置的香橙派(类似树莓派的卡片电脑,强烈不建议非刚需买这玩意儿,基本闲置吃灰)拿出来安个MariaDB远程访问,下面是安装的步骤

注1:我的是Debian系系统,如果你是RedHat系,把apt换成dnf或者yum就好

注2:所有命令均需要root权限

安装MariaDB

1、安装MariaDB

apt install mariadb-server

2、启动MariaDB

systemctl start mariadb

3、设置MariaDB开机自启

systemctl enable mariadb

4、执行初始化命令

mysql_secure_installation

初始化过程中会提示进行如下配置

# 输入原来的root密码,这里没有密码,直接回车就可以了
Enter current password for root (enter for none): # 更改root密码?
Change the root password? # 删除匿名用户?
Remove anonymous users? # 禁用root远程登录? 注:我选了否,最后还是要自己配置
Disallow root login remotely? # 是否删除test测试数据库?
Remove test database and access to it? # 重新加载权限数据表
Reload privilege tables now?

配置完成后可以考虑重新启动一下MariaDB

systemctl restart mariadb

配置远程登录

MariaDB安装好后是默认不能通过远程连接的,需要做以下修改

1、修改地址绑定

编辑/etc/mysql/mariadb.conf.d/50-server.cnf文件

将其中的

bind-address = 127.0.0.1

更改为需要放行的地址,如更改为0.0.0.0则接受所有IP地址的连接请求

bind-address = 0.0.0.0

2、添加支持远程登录的用户

我们可以先查询以下

use mysql;
select host,user from user;

在我安装之后,只能看到一个本地root用户

host user
localhost root

所以要添加一个远程登录的用户,因为是自己用,我就直接添加了一个授予所有权限的用户,如果是生产环境,慎重!!!

-- 创建用户
CREATE USER '用户名'@'主机名' IDENTIFIED BY '密码';
--示例1,允许所有从任意地址登录的用户: create user 'ActionNet'@'%' identified by 'zxc123';
--示例2,允许从192.168.199.100登录的用户: create user 'ActionNet'@'192.168.199.100' identified by 'zxc123'; -- 授予权限
grant 权限列表 on 数据库名.表名 to '用户名'@'主机名';
-- 示例:授予任意地址登录ActionNet用户所有数据库所有权限
GRANT ALL ON *.* TO 'ActionNet'@'%';

最近遇到了添加了远程账户还是无法登录的情况,具体为Access denied for user 'root'@'localhost'

这时候可以看看对应用户的plugin是不是mysql_native_password,因为这个才代表密码登录

select user,host,plugin from user;
User Host plugin
root localhost mysql_native_password

如果plugin不是这个,可以自己修改一下,正常修改表数据的SQL,就不写了

配置防火墙

之前因为我没有开防火墙,所以没想过会有这方面的问题,现在加上

# firewall
firewall-cmd --permanent --add-port=3306/tcp
firewall-cmd --add-port=3306/tcp
# iptables
iptables -A INPUT -p tcp --dport 3306 -m state --state NEW,ESTABLISHED -j ACCEPT

添加完防火墙记得重启一下

在Linux中安装MariaDB并添加远程访问的更多相关文章

  1. 详解在Linux中安装配置MongoDB

    最近在整理自己私人服务器上的各种阿猫阿狗,正好就顺手详细记录一下清理之后重装的步骤,今天先写点数据库的内容,关于在Linux中安装配置MongoDB 说实话为什么会装MongoDB呢,因为之前因为公司 ...

  2. 详解在Linux中安装配置MySQL

    最近在整理自己私人服务器上的各种阿猫阿狗,正好就顺手详细记录一下清理之后重装的步骤,今天先写点数据库的内容,关于在Linux中安装配置MySQL 安装环境 CentOS7 + MySQL5.7 下载安 ...

  3. Linux中安装python3

    [centos7中安装python3]http://blog.csdn.net/wjqwinn/article/details/75633714 (一)安装python3前的准备工作1.修改文件中第一 ...

  4. 在Linux中安装JDK和IDEA

    前言 寒假安装虚拟机的时候我就没有安装好,到学校之后,因为时间紧加上更习惯Windows的操作习惯,我只在Windows上安装了JDK和IDEA,但是随着学习的深入,我发现用虚拟机写命令行.新建jav ...

  5. Linux中安装配置spark集群

    一. Spark简介 Spark是一个通用的并行计算框架,由UCBerkeley的AMP实验室开发.Spark基于map reduce 算法模式实现的分布式计算,拥有Hadoop MapReduce所 ...

  6. 完全零基础在Linux中安装 JDK

    完全零基础在Linux中安装 JDK 总体思路:先确定没有Java程序了 — 然后创建相应路径文件夹 — 下载JDK — 解压到当前路径 — 自定义文件名称 — 配置环境变量 — 检查是否安装成功 第 ...

  7. linux中安装jdk+jmeter-

    --------------linux中安装jdk+jmeter-------------------- 一.安装JDK7.0版本 .先卸载服务器自带的jdk软件包 # java -version # ...

  8. Python原来这么好学-1.2节: 在Linux中安装python

    这是一本教同学们彻底学通Python的高质量学习教程,认真地学习每一章节的内容,每天只需学好一节,帮助你成为一名卓越的Python程序员: 本教程面向的是零编程基础的同学,非科班人士,以及有一定编程水 ...

  9. Linux中安装字体

    Linux中安装字体 查看系统中的字体 fc-list 查看系统中的中文字体 fc-list :lang=zh将然后将字体文件拷贝到/usr/share/fonts/中 cp aa.ttl /usr/ ...

随机推荐

  1. Network of Schools POJ - 1236 有向强连通图

    //题意://给你n个学校,其中每一个学校都和一些其他学校有交流,但是这些边都是单向的.你至少需要给几个学校//传递消息可以使全部学校都收到消息,第二问你最少添加几条边可以使它变成一个强连通图//题解 ...

  2. Entity Framework中Remove、Modified实体时,在修改或删除时引发主键冲突的问题

    问题: try { string fileId = context.NewsT.Where(t => t.Id == Model.Id).FirstOrDefault().FileId; str ...

  3. Chapter Zero 0.1.4 计算机上常用的计算单位

    0.1 计算机硬件 计算机上常用的计算单位 容量单位: 计算机对于数据的判断依据有没有通电来记录信息,对于每个记录而言, 他只认识0或1,而0/1这个二进制单位我们成为bit. 因为bit太小,所以存 ...

  4. 基于用户的协同过滤的电影推荐算法(tensorflow)

    数据集: https://grouplens.org/datasets/movielens/ ml-latest-small 协同过滤算法理论基础 https://blog.csdn.net/u012 ...

  5. certbot 获取数字证书失效问题

    title: certbot 获取数字证书失效问题 author: Narule date: 2021-02-18 10:45:00 +0800 categories: [Technology^技术, ...

  6. node.js cli downloader

    node.js cli downloader cli 下载器 refs https://github.com/xgqfrms/react-storybook-app xgqfrms 2012-2020 ...

  7. cookie & maxAge & expires

    cookie & maxAge & expires Expires (timestamp) & Max-Age (seconds) https://developer.mozi ...

  8. super fast sort algorithm in js

    super fast sort algorithm in js sort algorithm Promise.race (return the fast one) Async / Await // c ...

  9. flat array

    flat array 已知如下数组: var arr = [ [1, 2, 2], [3, 4, 5, 5], [6, 7, 8, 9, [11, 12, [12, 13, [14] ] ] ], 1 ...

  10. Event Bus & Event Emitter

    Event Bus & Event Emitter Event Bus https://code.luasoftware.com/tutorials/vuejs/parent-call-chi ...