mysql (分支 mariadb)
1.安装mariadb
-yum
-源码编译安装
-下载rpm安装
yum和源码编译安装的区别?
1.路径区别-yum安装的软件是他自定义的,源码安装的软件./configure --preifx=软件安装的绝对路径
2.yum仓库的软件,版本可能比较低,而源码编译安装,版本可控
3.编译安装的软件,支持第三方功能扩展./configure 这里可以加上很多参数,定制功能

yum仓库的区别
1.阿里云的yum仓库
2.假设mysql官网,也会提供rpm包,源码包,以及yum源,供给下载

2.配置mariadb的官方yum源,用于自动下载mariadb的rpm软件包,自动安装

注意点:阿里云提供的yum仓库,和epel源仓库,它也有mariadb,但是版本可能会很低

这个是yum默认的mariadb的版本信息
mariadb x86_64 1:5.5.60-1.el7_5 base 8.9 M

那我们就得选用mariadb的官方yum源,

3.配置官方的mariadb的yum源,手动创建 mariadb.repo仓库文件 (此步重要!!!!!!!!!!!)
touch /etc/yum.repos.d/mariadb.repo
然后写入如下内容
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.1/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1

4.通过yum安装mariadb软件,安装mariadb服务端和客户端 (由于是国外镜像源,因此下载速度可能很慢)
yum install MariaDB-server MariaDB-client -y

5.如果下载速度太慢,请删除 mariadb.repo,只是为了使用阿里云的yum源中的mariadb
rm -rf /etc/yum.repos.d/Mariadb.repo
然后清空yum 缓存
yum clean all

6.使用阿里云的yum下载 mariadb (阿里云的mariadb包名是小写的,而官方的是大写的!!!!注意的)
yum install mariadb-server mariadb -y

7.安装完成后,启动mariadb服务端
systemctl start/stop/restart/status mariadb
systemctl enable mariadb 开机启动mariadb

8.mysql初始化
mysql_secure_installation 这条命令可以初始化mysql,删除匿名用户,设置root密码等等....

9.设置mysql的中文编码支持,修改/etc/my.cnf
1.
vi /etc/my.cnf
在[mysqld]中添加参数,使得mariadb服务端支持中文
[mysqld]
character-set-server=utf8
collation-server=utf8_general_ci
2.重启mariadb服务,读取my.cnf新配置
systemctl restart mariadb
3.登录数据库,查看字符编码
mysql -uroot -p

输入 \s 查看编码

10.mysql常用命令
desc 查看表结构
create database 数据库名
create table 表名
show create database 库名 查看如何创建db的
show create table 表名; 查看如何创建table结构的

#修改mysql的密码
set password = PASSWORD('redhat');

#创建mysql的普通用户,默认权限非常低
create user yining@'%' identified by 'yiningzhenshuai';

#查询mysql数据库中的用户信息
use mysql;
select host,user,password from user;

11.给用户添加权限命令
grant all privileges on *.* to 账户@主机名    对所有库和所有表授权所有权限
gr
grant all privileges on *.* to yining@'%'; 给yining用户授予所有权限

flush privileges; 刷新授权表

12.授予远程登录的权限命令 (root不能远程登录的问题??)
grant all privileges on *.* to yining@'%'; 给yining用户授予所有权限

grant all privileges on *.* to root@'%' identified by 'redhat'; #给与root权限授予远程登录的命令

此时可以在windows登录linux的数据库

mysql -uyining -p -h 服务器的地址 连接服务器的mysql

13.学习mysql的数据备份与恢复

1.mysqldump -u root -p --all-databases > /data/AllMysql.dump 导出当前数据库的所有db,到一个文件中
2.登录mysql 导入数据
mysql -u root -p
> source /data/AllMysql.dump

3.通过命令导入数据
mysql -uroot -p < /data/AllMysql.dump #在登录时候,导入数据文件,一样可以写入数据

配置文件的格式
*.conf
*.cnf
*.ini
*.yml

mysql的主从复制架构,需要准备两台机器,并且可以通信,安装好2个mysql,保持版本一致性
mysql -v 查看数据库版本

1.准备主库的配置文件 /etc/my.cnf
写入开启主库的参数
[mysqld]
server-id=1 #标注 主:库的身份id
log-bin=s15mysql-bin #那个binlog的文件名

2.重启mairadb,读取配置文件
systemctl restart mariadb

3.查看主库的状态
mysql -uroot -p

show master status; #这个命令可以查看 日志文件的名字,以及数据起始点

4.创建用于主从数据同步的账户
create user 'yuanhao'@'%' identified by 'yuanhaobuxitou';

5.授予主从同步账号的,复制数据的权限
grant replication slave on *.* to 'yuanhao'@'%';

6.进行数据库的锁表,防止数据写入

flush table with read lock;

7.将数据导出
mysqldump -u root -p --all-databases > /opt/zhucong.dump

8.然后将主库的数据,发送给从库
scp /opt/zhucong.dump root@从库:/opt/

9.此时去从库的mysql上,登录,导入主库的数据,保持数据一致性
mysql -uroot -p
source /opt/zhucong.dump

从库的配置
1.写入my.cnf,从库的身份信息
vi /etc/my.cnf
[mysqld]
server-id=10

2.检查一下主库和从库的 参数信息

show variables like 'server_id';
show variables like 'log_bin';

3.通过一条命令,开启主从同步
change master to master_host='10.0.0.200',
master_user='xiaobai',
master_password='123456',
master_log_file='s15mysql-bin.000001',
master_log_pos=372;

4.开启从库的slave同步
start slave;

5.查看主从同步的状态
show slave status\G;

6.查看两条参数 ,确保主从正常
Slave_IO_Running: Yes
Slave_SQL_Running: Yes

redis
1.在linux安装redis
通过源码编译安装redis
1.下载源码包
wget http://download.redis.io/releases/redis-4.0.10.tar.gz
2.解压缩redis
tar -zxf redis-4.0.10.tar.gz
3.进入redis源码,直接可以编译且安装
make && make install

4.可以指定配置文件启动redis
vim /opt/redis-4.0.10/redis.conf

1.更改bind参数,让redis可以远程访问
bind 0.0.0.0
2.更改redis的默认端口
port 6380
3.使用redis的密码进行登录
requirepass 登录redis的密码
4.指定配置文件启动
redis-server redis.conf

5.通过新的端口和密码登录redis
redis-cli -p 6380
登录后
auth 密码

redis还支持交互式的参数,登录数据库
redis-cli -p 6380 -a redis的密码 (这个不太安全)

6.通过登录redis,用命令查看redis的密码
config set requirepass 新的密码 #设置新密码
config get requirepass #获取当前的密码

过滤出文件的空白行和注释行
grep -v "^#" redis.conf | grep -v "^$"

详情 :https://www.cnblogs.com/pyyu/p/9467289.html

mariadb的安装的更多相关文章

  1. MariaDB的安装与启动

    MariaDB的安装与启动 1.安装前需要删除系统已存在的mysql及mariadb [root@vm172--- ~]# rpm -qa|grep mysql [root@vm172--- ~]# ...

  2. linux中mariadb的安装

    在Linux中mariaDB的安装 MariaDB其实就是MySQL的分支,是为了应对MySQL的即将的闭源风险所产生的. Linux系统中软件包的格式为mysql.rpm格式. 通过yum去安装 L ...

  3. mariaDB的安装 apache的安装

    1.mariaDB的安装: 下载安装包: wget -c https://downloads.mariadb.com/MariaDB/mariadb-10.3.6/bintar-linux-glibc ...

  4. centOS7中Mariadb数据库安装与基本管理

    一.Mariadb数据库安装 1. 直接yum源安装 yum -y install mariadb mariadb-serversystemctl start mariadb /启动Mariadb服务 ...

  5. Window7 环境下 MariaDB 的安装 及使用

    MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可.开发这个分支的原因之一是:甲骨文公司收购了MySQL后,有将MySQL闭源的潜在风险,因此社区采用分支的方 ...

  6. mariadb新安装解决远程访问以及root登录

    mariadb新安装解决远程访问以及root登录一.修改/etc/mysql/my.conf找到bind-address = 127.0.0.1这一行直接#掉或者改为bind-address = 0. ...

  7. linux之mariadb的安装

    1.概述 mysql为关系型数据库. mysql的分支-- mysql (自己本身) -- 2008前后的被SUN收购 SUN之后又被oracle收购 系统集成--什么都干(- 套解决方案) mari ...

  8. MariaDB的安装及相关配置

    MariaDB的安装及相关配置 安装 yum -y install mariadb mariadb-server 安装完成MariaDB,首先启动MariaDB systemctl start mar ...

  9. MySQL/MariaDB二进制安装

    本文说明MySQL/MariaDB二进制安装的过程 mysql和mariadb的安装方式基本一致,唯一初始化方式有点不一样 1.规划: 数据文件存储位置                /data/my ...

随机推荐

  1. ubuntu tomcat自启动

    1 编写启动文件/etc/init.d/tomcat7 文件内容如下:

  2. jupyter notebook的插件安装及文本格式修改

    jupyter notebook的插件安装及文本格式修改 1.jupyter notebook拓展插件安装 启动jupyter notebook : 打开控制台输入命令 jupyter noteboo ...

  3. idea 获取当前git最新分支

    菜单栏VCS->选中Git 选择Fetch 获取最新分支

  4. Leetcode 76.最小覆盖子串

    最小覆盖子串 给定一个字符串 S 和一个字符串 T,请在 S 中找出包含 T 所有字母的最小子串. 示例: 输入: S = "ADOBECODEBANC", T = "A ...

  5. hdu 2546 0-1背包

    #include<stdio.h> #include<string.h> #define N 1100 int dp[N],a[N]; int main() { int n,m ...

  6. 转载 - Python里面关于 模块 和 包 和 __init__.py 的一些事

    出处:http://www.cnblogs.com/tqsummer/archive/2011/01/24/1943273.html python中的Module是比较重要的概念.常见的情况是,事先写 ...

  7. vue.js组件之间通讯的数据双向绑定----父亲把数据传递给儿子,儿子更改数据后,重新发送给父亲,父亲数据更改后,属性会重新发送个儿子,儿子刷新新数据

    vue组件是相互独立的,如果要交互通讯,这时候,就需要组件之间数据互通了 往常我们讲的都是数据传递,子传父,父传子,都没有说子和父,父与子之间的数据互通 父亲传递给儿子数据,儿子触发一个父亲方法,将最 ...

  8. 最小生成树 C - Building a Space Station

    You are a member of the space station engineering team, and are assigned a task in the construction ...

  9. Oracle Multitenant Environment (二) Purpose

    Purpose of a Multitenant Environment A multitenant environment enables the central management of mul ...

  10. [Vue @Component] Pass Props Between Components with Vue Slot Scope & renderless component

    Components with slots can expose their data by passing it into the slot and exposing the data using  ...