在Linux中安装MariaDB并添加远程访问
在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并添加远程访问的更多相关文章
- 详解在Linux中安装配置MongoDB
最近在整理自己私人服务器上的各种阿猫阿狗,正好就顺手详细记录一下清理之后重装的步骤,今天先写点数据库的内容,关于在Linux中安装配置MongoDB 说实话为什么会装MongoDB呢,因为之前因为公司 ...
- 详解在Linux中安装配置MySQL
最近在整理自己私人服务器上的各种阿猫阿狗,正好就顺手详细记录一下清理之后重装的步骤,今天先写点数据库的内容,关于在Linux中安装配置MySQL 安装环境 CentOS7 + MySQL5.7 下载安 ...
- Linux中安装python3
[centos7中安装python3]http://blog.csdn.net/wjqwinn/article/details/75633714 (一)安装python3前的准备工作1.修改文件中第一 ...
- 在Linux中安装JDK和IDEA
前言 寒假安装虚拟机的时候我就没有安装好,到学校之后,因为时间紧加上更习惯Windows的操作习惯,我只在Windows上安装了JDK和IDEA,但是随着学习的深入,我发现用虚拟机写命令行.新建jav ...
- Linux中安装配置spark集群
一. Spark简介 Spark是一个通用的并行计算框架,由UCBerkeley的AMP实验室开发.Spark基于map reduce 算法模式实现的分布式计算,拥有Hadoop MapReduce所 ...
- 完全零基础在Linux中安装 JDK
完全零基础在Linux中安装 JDK 总体思路:先确定没有Java程序了 — 然后创建相应路径文件夹 — 下载JDK — 解压到当前路径 — 自定义文件名称 — 配置环境变量 — 检查是否安装成功 第 ...
- linux中安装jdk+jmeter-
--------------linux中安装jdk+jmeter-------------------- 一.安装JDK7.0版本 .先卸载服务器自带的jdk软件包 # java -version # ...
- Python原来这么好学-1.2节: 在Linux中安装python
这是一本教同学们彻底学通Python的高质量学习教程,认真地学习每一章节的内容,每天只需学好一节,帮助你成为一名卓越的Python程序员: 本教程面向的是零编程基础的同学,非科班人士,以及有一定编程水 ...
- Linux中安装字体
Linux中安装字体 查看系统中的字体 fc-list 查看系统中的中文字体 fc-list :lang=zh将然后将字体文件拷贝到/usr/share/fonts/中 cp aa.ttl /usr/ ...
随机推荐
- 牛客小白月赛17 G 区间求和
传送门 题意: 题解: 原本想着使用暴力方法: 1 #include<stdio.h> 2 #include<string.h> 3 #include<iostream& ...
- Codeforces Gym-102219 2019 ICPC Malaysia National J. Kitchen Plates (暴力,拓扑排序)
题意:给你5个\(A,B,C,D,E\)大小关系式,升序输出它们,如果所给的大小矛盾,输出\(impossible\). 题意:当时第一眼想到的就是连边然后排序,很明显是拓扑排序(然而我不会qwq,之 ...
- hdu5360 Hiking
Problem Description There are n soda conveniently labeled by 1,2,-,n. beta, their best friends, want ...
- Codeforces Round #531 (Div. 3) C. Doors Breaking and Repairing (博弈)
题意:有\(n\)扇门,你每次可以攻击某个门,使其hp减少\(x\)(\(\le 0\)后就不可修复了),之后警察会修复某个门,使其hp增加\(y\),问你最多可以破坏多少扇门? 题解:首先如果\(x ...
- C#之字符编码
在 Windows Vista 及之后的版本中,每个Unicode字符都使用UTF-16编码,UTF的全称是 Unicode Transformation Format(Unicode 转换格式).U ...
- 在kubernetes集群里集成Apollo配置中心(1)之交付Apollo-configservice至Kubernetes集群
1.Apollo简介 Apollo(阿波罗)是携程框架部门研发的分布式配置中心,能够集中化管理应用不同环境.不同集群的配置,配置修改后能够实时推送到应用端,并且具备规范的权限.流程治理等特性,适用于微 ...
- codeforces 1010 C. Border【exgcd】
题目链接:戳这里 学习博客:戳这里 题意:给n种数,n种数取任意个任意组合相加为sum,求sum%k有哪些值. 解题思路: 由exgcd可知(具体用到的是贝祖定理),ax + by = c,满足gcd ...
- 秋招C++面试相关总结索引
C++相关 C++ part1 C++ part2 C++ part3 C++ part4 C++ part5 C++ part6 C++ part6.5 C++ part7 C++ part8 C+ ...
- ARM汇编指令-STMFD/LDMFD
根据调用规则ATPCS,程序一般都使用FD(FullDescending)类型的数据栈(满栈),那么对立的就由空栈类型的数据栈.空栈是指SP操作完后指向的地址空间是未使用的,反之满栈就是SP指向的地址 ...
- Linux内核实现透视---工作队列
作为Linux中断低半部的另一种实现机制的基础,工作队列的出现更多的是为了解决软中断和Tasklet对于用户进程的时间片的不良影响问题的.工作队列本身是可以使用内核线程来替代的,但是使用线程来实现复杂 ...