Linux中的mysql.redis
1,Linux上的mysql
MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可。
开发这个分支的原因之一是:甲骨文公司收购了MySQL后,有将MySQL闭源的潜在风险,因此社区采用分支的方式来避开这个风险。
MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品。
2,安装mariadb,在centos7底下
- 第一种在阿里云的yum源去下载,(可能版本低,且软件不全,可能找不到)
- yum install mariadb-serve
- 第二种是,通过mariadb官方的yum源去下载(一定是在这个软件最正确的yum源,且包都是最新的)
- yum install MariaDB-server MariaDB-client
- 下载mariadb,通过阿里云的源
- yum install Mariadb-server
- 通过yum安装的软件
- systemctl start/stop/restart/status mariadb
- 启动mariadb数据库
- systemctl start mariadb
- 初识化mariadb
- mysql_secure_installation # 直接输入这个命令,设置root密码,删除匿名用户
- 配置myariadb远程登录,可以通过Windows,pycharm等客户端进行连接,在远程登录的话就必须输入刚才设置的root密码
- grant all privileges on *.* to root@'%' identified by "0923";
- 授权所有的权限在所有的库,所有的表用户@"所有的地址" identify by"密码";
- 刷新授权表,使得权限立即生效
- flush privilege;
- 更改mysql密码
- set password = PASSWORD("0923")
- 创建普通用户xuexue
- create user xuexue@'%'identify by "0923"
- 查询用户信息
- select host,user,password from user
- 授权信息表
- grant 权限 on 数据库.表名 to 账户@主机名 对特定数据库中的特定表授权
- grant 权限 on 数据库.* to 账户@主机名 对特定数据库中的所有表给与授权
- grant 权限1,权限2,权限3 on *.* to 账户@主机名 对所有库中的所有表给与多个授权
- grant all privileges on *.* to 账户@主机名 对所有库和所有表授权所有权限
- grant create,select,insert on *.* to root@'%' identified by "密码"
- 数据库的中文设置
- 查看数据库的编码
- \s
- 修改mysql的配置文件/etc/my.conf, 加入以下信息
[mysqld]
character-set-server=utf8
collation-server=utf8_general_ci
log-error=/var/log/mysqld.log
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8- 修改配置文件,重启服务
- systemctl restart mariadb
- 查看数据库创建编码,只有在更新了数据库编码之后,创建的数据库,才会使用这个编码
- show create restart xueren
- 可以测试创建 table,写入中文数据
- 查看数据库的编码
- mysql的数据备份
- 通过命令导出全部数据
- mysqldump -uroot -p --all-databases > /data/db.dump
- 导入数据库的db文件,在mysql命令行中输入这个命令
- source /opt/db.dump # 这一步是输入的sql语句,在mysql中输入,导入数据
- 第二种方式导入数据,通过mysql命令
- mysql -uroot -p < /opt/db.dump
- 通过命令导出全部数据
3,主从复制
主库的操作
- 开启binlog功能,修改/etc/my.cnf
- vim /etc/my.cnf
- [mysqld]
- server-id=1 3 指明主库的身份id为1
- log-bin=mysqlsxuexue-bin
- 修改配置文件,重启mariadb,使得binlog生效
- systemctl restart mariadb
- 登录mysql,检查主库 的状态
- show master status;
- 创建一个用户,用于进行主从同步
- create user "xuexue"@'%'identified by "xuexue0923";
- 授予账号权限,授予一个从库的身份权限
- grant replication slave on *.* to"xuexue"@'%';
- 锁定mysql表,防止数据写入
- flush table with read lock
- 主从同步,将从库与主库的数据保持一致后,然后解除锁表,一同写入,保证数据的一致性
- 导出当前的数据用于slave机器导入数据,保证数据的一致性
- mysqldump -uroot -p --all-databases > /data/db.dump
- 将此db.dump文件远程传输给slave机器,用于导入
- scp/data/db.dump root@从库的ip地址(列如:192.168.12.87:/tmp/)
- 登录slave从库,导入主库的数据信息
- source /tmp/db.dump(从库的数据库操作)
- 导出当前的数据用于slave机器导入数据,保证数据的一致性
- 查看主库的状态信息,binlog信息
- show master status;
- 解锁表,等待从库的配置
- unlock tables;
从库的设置:
- 在etc/my.cnf当中打开server-id设置一个和主库不一样的值
- vim /etc/my.cnf
- 重启myariadb
- systemctl restart mariadb
- 查看slave的身份信息
- show variables like 'server_id';
- show variables like 'log_bin';
- 通过命令,开启主从同步技术
change master to master_host=从机ip('192.168.12.96'),
master_user='xuexue',
master_password='xuexue0923',
master_log_file='mysqlxuexue-bin.000001',
master_log_pos=231;
- 开启slave
- start slave
- 检查slave状态,检查两条参数,都是yes,主从ok
- show slave status\G;
- Slave_IO_Running: Yes
Slave_SQL_Running: Yes
- 此时连接成功
Linux中的mysql.redis的更多相关文章
- Linux中python3,django,redis以及mariab的安装
1. Linux中python3,django,redis以及mariab的安装 2. CentOS下编译安装python3 编译安装python3.6的步骤 1.下载python3源码包 wget ...
- Mysql篇--Linux中安装Mysql
一.前述 由于Windows安装Mysql非常麻烦,所以分享一篇Linux中对MySQL的搭建,废话不多说,来,come on. 二.步骤 2.1 yum安装 yum install mysql-se ...
- windows与linux中的mysql配置主从
最近在给学生讲解数据库的主从配置,由于学生电脑里面装的虚拟机是linux的,但是本机的系统是windows的,所以需要用windows中的mysql与linux中的mysql进行主从配置.下面说一下主 ...
- Linux中安装MySQL
因为使用yum安装.安装过程需保证网络通畅 一.安装mysql 1.yum安装mysqlCentOS7默认数据库是mariadb,配置等用着不习惯,因此决定改成mysql,但是CentOS7的yum源 ...
- 通过window(Navicat)访问linux中的mysql数据库
Centos安装Mysql数据库 查看我们的操作系统上是否已经安装了mysql数据库 [root@centos~]# rpm -qa | grep mysql // 这个命令就会查看该操作系统上是否已 ...
- Linux中的MySQL授权远程连接
Linux中 MySQL 授权远程连接 参考地址:https://www.centos.bz/2018/10/linux%e4%b8%ad-mysql-%e6%8e%88%e6%9d%83%e8%bf ...
- linux中进入mysql时报错Access denied for user 'root'@'localhost' (using password: YES)解决方案
之前在linux中装完mysql后直接在命令行窗口输入mysql就会进入数据库了,但是今天输入mysql命令后直接报错,如下图: 之后输入:mysql -uroot -p 提示输入密码:***** 还 ...
- LINUX中备份mysql数据库
1.在LINUX中创建备份目录 如:/home/backup 2.把sh脚本放到备份目录下 脚本如下 https://wws.lanzous.com/i1oCxlccapa密码:dter ...
- linux中安装JDK linux中安装Tomcat linux中安装Mysql 及故障解析 linux系统安装redis
Linux 安装JDK 配置完环境变量后无法使用 java -version 无法打开 通过下面语句 将32位文件与当前系统64位兼容 (有待补充32位查法)sudo yum install glib ...
随机推荐
- 第九节:pandas打印设置
get_option() :获取系统默认设置选项: set_option() :设置系统设置选项.
- scrollLeft属性设置无效的一个记录
首先应该明确scrollLeft这个属性,只有当div中的内容长度大于当前div的长度是才能working,根据这个我我找到了一个很神奇的地方,而且我注意到这个${}连注释里面都能替换过来! 以下是正 ...
- 【HDU 6005】Pandaland(Dijkstra)
Problem Description Mr. Panda lives in Pandaland. There are many cities in Pandaland. Each city can ...
- Java学习--异常处理及其应用类
异常是运行时在代码序列中引起的非正常状况,换句话说,异常是运行时错误.在不支持异常处理的计算机语言中,必须手动检查和处理错误----通常是通过使用错误代码,等等.这种方式既笨拙又麻烦.Java的异常处 ...
- HDU3785寻找大富翁~~真真切切的水题
寻找大富翁 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Subm ...
- Codeforces603E - Pastoral Oddities
Portal Description 初始时有\(n(n\leq10^5)\)个孤立的点,依次向图中加入\(m(m\leq3\times10^5)\)条带权无向边.使得图中每个点的度数均为奇数的边集是 ...
- usort 使用(转载)
private function arrCmp($a,$b){ if($a['day_time'] == $b['day_time']){ return 0; } return($a['day_ti ...
- Linux硬件监控
https://blog.csdn.net/qq_30353203/article/details/62222882
- webpack体积优化篇二(GZ压缩)
这里我列举几个常用的能够用于减少包体大小的插件,我们可以根据项目需求选择性的使用: compression-webpack-plugin :该插件能够将资源文件压缩为.gz文件,并且根据客户端的需求按 ...
- 在访问RESTful接口时出现:Could not write content: No serializer found for class的问题解决小技巧收集
注意:市面上对于写RESTful是用RestFul,其实是不规范的,标准写法RESTful. 在Java上,处理这个应该是没有继承Serializable类,然后通过Eclipse生成serialVe ...