我们在3个数据中心运行MariaDB Galera群集。我们使用mariabackup工具在每个数据中心进行备份,但由于相同的数据正在所有3个数据中心上复制,因此我们正在尝试实施一种解决方案,其中包括仅在DC中执行备份脚本,如果正在进行备份的DC中出现停机,则备份应自动在其他DC中运行。我们非常欣赏这种方法的任何解决方案。您需要某种类型的“事件和触发器”来实现这一点
我使用zabbix来监视我的每日mariabackup,我遇到了一个问题,即mariabackup运行时节点已关闭。
我真的不在乎
我有一个使用定义用户@'1.1.1.1'创建的过程
我的ip被更改了,我无法访问该过程
我可以通过查询信息模式来查看它们
我可以看到函数存在于user@newip但我无法查看代码或更改权限
有没有办法“接管”这个职能?
(将其定义者更改为用户@“%”) 没有SQL命令来更改定义者或主机地址。
几年前,Hartmut Holzgraefe在博客中谈到了这个问题和解决方案:
我在用mariaDB。
基本上每次我启动它时,它都告诉我mysqld进程已经存在。
为什么我必须运行sudoapachectl start才能让mysql工作?
我不应该只需要mysql.server启动
mysql.server重启
关闭MySQL
.. 成功!
启动MySQL
.171102 15:59:35 mysqld_安全登录到“/usr/local/var/mysql/**.err”。
171102 15:59:35 mysqld_safe mysqld进程已存在
成功
一个相关的问
此语句导致错误
INSERT INTO items (id,name,image,price) VALUES('1','iphone 5s',LOAD_FILE('C:\xampp\htdocs\project\1.jpg'),300);
INSERT INTO items (id,name,image,price) VALUES('1','iphone 5s',LOAD_FILE('C:\xampp\htdocs\project\1.jpg'),300)
MySQL said: Docume
错误号码:1064
您的SQL语法有错误;检查与您的MariaDB服务器版本对应的手册,以了解在附近使用的正确语法,其中\u id在第2行为空
SELECT * WHERE `_id` IS NULL
文件名:views/backend/header.php
电话号码:34
我的代码:
<?php $name = $this->db->get_where($this->session->userdata('login_type'), array($this->
我有一个命令行,它已经运行到一个cpanel主机中:
mysql -hlocalhost -e "use xxx_xx; update xxx_jshopping_manufacturers set manufacturer_publish = 0 where \`name_es-ES\` NOT IN ('BULL SOUND', 'ROYAL', 'BLACK + DECKER (ELECTROD)', 'SAMSUNG', 'DAEWOO', 'OSTER', 'WAHL', 'REMIN
我有三张表要选择
表1有一组关于用户的静态信息,比如他们的ID号、姓名、注册日期
表2显示了用户的ID号、课程号以及他们注册课程的日期
表3列出了课程编号和课程名称
我尝试使用一个查询来选择表1中提到的列,其中包括他们注册的最新课程(名称和日期注册)以及他们注册的第一个课程(名称和日期注册)
这是我想到的
SELECT u.idst, u.userid, u.firstname, u.lastname, u.email, u.register_date,
MIN(l.date_insc
我是InfluxDB的新手,我正在尝试比较MariaDB和InfluxDB 2.0的性能。因此,我执行了一个大约350.000行的基准测试,这些行存储在一个txt文件(30mb)中
在使用MariaDB时,我使用“executemany”将多行写入数据库,所有行(使用Python)大约需要20秒
因此,我使用Python客户机对XDB进行了同样的尝试,下面是我如何实现这一点的主要步骤
#Configuring the write api
write_api = client.write_api(
标签: Mariadb
mysql-slow-query-logtokudb
我的慢速查询日志中有以下条目:
Query_time: 4.000347
Lock_time: 0.000095
Rows_sent: 0
Rows_examined: 0
update `my_table` set `a` = null, `b` = 'x', c= ... (updating around 20 fields) where `id` = 1234;
id是此表中的主键;并且有一个与此id
按主键选择是快速的。而且在大多数情况下,通过PK更新运行速度要快得多;所以我想
标签: Mariadb
haproxyef-core-2.0galera
当我在web服务器上运行性能测试时,大约2%的请求返回此错误:
Cannot add or update a child row: a foreign key constraint fails.
下面是我的设置的简要说明
web服务器(centos 7上的(.net core 2)->Ha代理(循环模式)->在多主机群集中设置3台MariaDb服务器
Web服务器代码的简化版本为:
接收来自客户端的请求
在表a中插入一行
在表B中插入一行,将外键插入表a
注意:由于我使用.NETCore(带E
因此,我有一个Flyway迁移,它在几年前成功地应用于MariaDB的旧版本
MariaDB的较新版本现在更加严格,并在同一迁移中导致错误。对于从基线开始的新运行(例如,在我的CI环境中构建,或在新devleoper的笔记本电脑上构建),以及我的所有现有数据库(在我尝试将它们升级到较新的MariaDB版本之前,这可能会失败),我希望修复该迁移的合法问题
正确的解决方案是什么
更改迁移,并添加一个新的迁移,该迁移执行相同的修复(另一个Alter TABLE…),这将有效地成为新创建的DBs的no
我刚刚通过brew安装了homebrew和mariadb。
由于某些原因,尝试访问数据库时出错。
如果将密码保留为空(这通常是默认设置),则会给出一个错误,如果我尝试使用rot密码,则也会给出一个错误
下面是我得到的结果:
➜ ~ brew services list
Name Status User Plist
mariadb started refix /Users/refix/Library/LaunchAgents/homebrew.mxcl.mariadb.plist
ph
我正在Ubuntu 1804上使用Maria DB:
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 37
Server version: 10.1.44-MariaDB-0ubuntu0.18.04.1 Ubuntu 18.04
我想做一些相对简单的事情,我已经浪费了2个小时。我想以字符串形式加载文件。这个网站上有几个问题(很多都是很老的问题),但是没有一个能让
标签: Mariadb
dynamic-columnsselect-insert
我需要插入动态列作为从另一个表中选择
我试过:
INSERT INTO table (id, photos)
VALUES
(12345,COLUMN_CREATE(SELECT file FROM photo WHERE ad_id = 12345));
及
及
MariaDB总是返回1064-您的SQL语法有错误
在表格周围加引号,因为它是一个保留字
将动态列的编号或名称添加到列_CREATE函数的参数中,我的示例SQL使用1作为列编号
将SELECT语句放在括号内,因为子查询必须放在括号
我最近从10.0.21升到了10.1.8。所有的测试都进行得很顺利,但有一些小部件被忽略了。因此,我需要将数据从10.1.8降级/迁移到10.0.21。我想我可以将数据迁移到10.0.21的新安装中,但不知道MariaDB是否在版本升级过程中插入了一些额外的内容
是否有真正的方法从升级版本的MariaDB获取数据并将其移动到更低版本的MariaDB?您可以使用mysqldump从更高版本转储数据库并将其导入更低版本的MariaDB。这是因为它使用SQL语句
用法和示例:
备份和还原概述(“可以在
下面的说法有什么不对
ALTER TABLE submittedForecast
ADD CONSTRAINT FOREIGN KEY (data) REFERENCES blobs (id);
我收到的错误消息是
Can't create table `fcdemo`.`#sql-664_b` (errno: 150 "Foreign key constraint is incorrectly formed")
这对我来说适用于MariaDB 10.1.8:
CREATE TABLE
我安装了mariaDB,把根密码搞乱了。现在我不能进去了。我尝试了每一个教程来重置密码,但只得到了错误1045(用户“root”的访问被拒绝)
所以我清除了我的安装。我运行了sudomysql\u-secure\u安装程序,但仍然收到这个错误1045
我真的需要一些帮助。我不在乎DB是否消失,我只想能够使用MariaDB,我被卡住了
谢谢 我做的是超级清洗。我清除了我能找到的所有mysql/mariadb包。我手动删除了/etc/mysql文件夹和我能找到的var/whatevermariadb
我使用的是MariaDB 10.2.22,无法使用机器的外部IP地址连接到数据库,但只能从这台机器上连接
没有跳过网络,地址绑定也不受限制。已创建“%”和“localhost”的授权,刷新权限,甚至已完成服务器重启
使用带有凭据的“localhost”进行连接时,没有问题。当使用ip(外部接口的)作为主机名进行连接时,只要我是从Internet上的其他计算机进行连接,就没有问题
当我使用相同的IP地址(来自外部接口)和相同的凭据,但从服务器所在的计算机进行连接时,会出现悲伤的消息:
mysql:
标签: Mariadb
mariadb-10.4mariadb-10.5
我有一些问题
安装成功
mysql\u安全安装设置完成
但是我登录了mysql-u root-p
插入任何可以登录linux根用户的密码
(并非root用户必须输入正确的密码)
此问题在MariaDB v10.3
但是,MariaDB v10.4版的
我认为这种情况不安全
我能找到一些解决方案吗?这是由于根用户的插件设置为unix\u socket
MariaDB [(none)]> select User,Host,Password,Plugin from mysql.user;
+
MariaDB是否支持嵌套事务(而不是保存点)
我希望能够在存储过程中使用嵌套事务。目前在MySQL中,我向每个存储过程传递一个参数“useTransation”,它控制我是否在该存储过程的主体中启动一个新事务
如果事务可以嵌套,那就更方便了。不。但是MariaDB有@@in_事务,它告诉您事务是否已经在进行中。没有,但是MariaDB和MySQL都有:
START TRANSACTION;
[do e.g. an insert here]
COMMIT AND CHAIN;
[do e.g.
我在阅读Galera Cluster上的mariaDD知识库时发现:
同步复制和异步复制之间的基本区别在于,“同步”可以保证,如果更改发生在集群的一个节点上,那么它们将“同步”发生在其他节点上,或者同时发生在其他节点上。“异步”不保证在“主”节点上应用更改和将更改传播到“从”节点之间的延迟。延迟可以是短的,也可以是长的。这还意味着,如果主节点崩溃,一些最新的更改可能会丢失
在最后一句话中,我始终理解,即使异步集群设置中的从机上的更新不是同时执行的,但在主机上进行更新时,它会将这些更新记录到bin
系统信息:
Linux Fedora 26
Mariadb版本10.1.25
我已执行中所述的所有声明。
此外,我还禁用了selinux
但是load_file仍然返回NULL而不给出错误。
我按照这些说明()来启用常规日志记录,但“querys.log”只报告查询已执行,而没有提供有关为什么返回NULL而不是所需输出的信息
Mariadb是否记录此故障的原因?如果是,在哪里?验证其余约束:
加载文件(文件名)
读取文件并以字符串形式返回文件内容。要使用此功能,文件必须位于服务器主机上,必须指定
考虑以下情况:您有两个MariaDB实例(可能在不同的物理服务器上),每个实例都有不同的数据目录
第一个实例有DATA_DIR1,包含InnoDB数据库DB1和DB2的文件夹
第二个实例有数据_DIR2,包含InnoDB数据库DB3和DB4的文件夹
假设您想要将DB2从第一个实例移动到第二个实例
如何在实例之间安全地复制文件(即,不执行mysqldump,这对于非常大的数据库来说太慢)。或者,可以选择使用mariabackup部分备份,因为这不会像mysqldump那么慢
特别是,需要做些什么来
我想创建一个表,然后以尽可能简洁的方式用一些值初始化它
但是,每次我的应用程序启动时都会执行此脚本,因此插入应该只发生在以前未添加的项目上
我不想在“INSERT IGNORE INTO”中使用IGNORE指令,因为我不想忽略意外错误
出于某种原因,INSERT INTO失败,出现“SQL错误(1136):列计数与第1行的值计数不匹配”,即使下面的选择给出了需要添加的值
下面是失败的代码:
START TRANSACTION;
CREATE TABLE IF NOT EXISTS `privi
我正在使用MariaDB开发一个数据库应用程序,其中我有一个用于客户寄存器的表。我希望他们能够查询数据库,但我不知道是否必须为每个用户创建一个数据库用户帐户,以便允许同时连接而不发生冲突(同一用户同时尝试查询),或者我可以使用同一用户帐户进行同时查询
我对MariaDB有点陌生。
感谢您的建议。数据库擅长处理多个连接对同一表的“同时”访问
“一个”与“多个”用户帐户的问题与同时访问无关
大多数访问都可以正常工作,没有任何问题。在极端情况下,我建议你读一下“死锁”
我正试图在Ubuntu18.04中安装mariadb版本10.1.37,但我没有得到该版本
下面是我尝试过的安装命令
sudo apt获得更新-y
sudo apt key adv--recv key--keyserverhkp://keyserver.ubuntu.com:80
0xF1656F24C74CD1D8
sudo添加apt存储库'deb[arch=amd64,i386,ppc64el]xenial main'
sudo apt获得更新-y
sudo apt get install
我有这样一个问题:
wait_started wait_age wait_age_secs locked_table locked_index locked_type waiting_trx_id waiting_trx_started waiting_trx_age waiting_trx_rows_locked waiting_trx_rows_modified waiting_pid waiting_query
这在Mysql中是可行的,但MariaDB的语法似乎不同,我正在尝试删除前900行以上的任何内容(限制为900行):
尝试在Maria中执行此操作将返回以下错误:
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that
corresponds to your MariaDB server version for the right syntax to use near
'NOT IN (S
当我运行慢速查询日志分析器时,我会看到以秒为单位的大量请求。我尝试手动执行这些请求,它们执行得非常快(0.01秒)。有什么问题吗
mysql版本15.1发行版10.1.9-MariaDB,用于Linux(x86_64),使用readline 5.1
CREATE DEFINER = 'root'@'192.168.1.101' EVENT `DEL_EXPIRED_BANS`
ON SCHEDULE EVERY 10 MINUTE STARTS '2013-10-18 13:38:54'
我试图让travis在构建过程中运行dredd测试。我意识到我需要运行mariaDB作为流程的一部分。我不确定在运行dredd测试之前如何创建表或插入样本数据。我已经添加了mariadb作为travis.yml的一个插件,仅此而已。
为了让dredd在travis中运行,我还将使用docker compose
编辑:
我有我的travis.yml跑步
docker-compose up -d
sleep 30
BUNCH OF SQL COMMANDS to create tables and
我在mysql版本15.1发行版10.1.23-MariaDB中使用readline 5.1为Linux(x86_64)提供了一些函数和过程。它们的代码如下所示:
CREATE OR REPLACE DEFINER=`root`@`%` FUNCTION `some_name`(_IN_FECHA_PROYECCION date) RETURNS double
BEGIN, etc...
END
当我使用Laravel(php artisan migrate)通过命令行创建这些函数或过程时,一
我的桌子挂在ALTER命令上。它已经运行了一个多星期了。我想知道查询是否正常运行,我应该等待它完成,或者出现问题
下面的查询在MariaDB 5.5(InnoDB)上运行,该表大约有2.5M行,表的大小约为2.5TB
ALTER TABLE Part MODIFY parsedText longtext null
MariaDB [performance_schema]> Select * from INFORMATION_SCHEMA.PROCESSLIST;
+----+------+
我有一个关于我想要执行的查询的问题,但我不知道什么是最佳qua性能。我需要获取所有单词,排除与表wordfilter相关的单词
查询的输出是正确的,但可能有更好的解决方案。我对查询计划几乎一无所知,我现在正在努力理解它
SELECT CONCAT(SPACE(1), UCASE(stocknews.word.word), SPACE(1)) AS word, stocknews.word.language
FROM stocknews.word
WHERE NOT EXISTS (SELEC
我想在mariadb columnstore中创建包含数千行的宽表。我没有找到存储引擎允许的最大列数的任何文档。我还想知道columnstore对于1000个整型列的性能如何?(注意:这个“答案”是基于我对设计的理解,而不是基于任何“事实”。)
表的磁盘占用空间应与列数成比例
与MariaDB中的大多数内容一样,列的数量可能有一个硬限制,但我想不出任何理由将其限制在1000以下。也许,相反,2的一些更大的幂
当只引用少量列时,表中有多少列应该无关紧要。数据的结构应该允许以相对固定的工作量获取每一
显然,MariaDB支持将IF EXISTS与CHANGE结合使用,用于`ALTER TABLE queries(),但详细文档并未暗示这一点。
下面是测试表的两个示例查询:
ALTER TABLE `test` CHANGE COLUMN `col2` `col2` INT(1) NOT NULL AFTER `col1`;
ALTER TABLE `test` CHANGE COLUMN `col2` `col2` INT(2) NOT NULL AFTER `col1`;
但是,当我添
我在运行Plesk Onyx的高端Centos 7 VPS(16 vCore/128 GB RAM)上运行一个访问量高的网站
Centos 7/MariaDB 10.1/PHP-FPM 5.6安装程序
一切通常都是顺利和快速的,但一年中有两次网站因为来自MariaDB的信息“连接太多”而崩溃
由于急于恢复网站,我启动了“服务重启”,但实际上并没有启动ShowProcessList
后来我检查了mariadb日志和web服务器日志,没有找到任何有用的问题解决方法
请注意,当它第一次发生时,我在my
我目前在mysql复制方面遇到一些问题。我们使用主设置进行故障切换
复制本身正在工作,我相信这是正确的设置。但是我们遇到了一些需要花费关键时间执行的查询的问题
例如:
|166 |数据库|连接| 35 |更新|更新xxsetxx=
“xx”其中xx='xx'和xx='xx'| 0.000|
这些更新查询有时需要20-30秒以上的时间才能完成,因为复制开始落后,在一天之内,它将落后几个小时。奇怪的是,它最终会赶上另一位大师
该表的行数约为100MM,大小约为70GB。在执行查询的主机上,它们只需不
我想尝试InnoDB(更改MyISAM引擎)。插入/删除/更新工作正常(使用事务)。选择看起来不错。更改和创建InnoDB表非常糟糕
比较create/alter InnoDB和MyISAM表:
MariaDB [temp_db]> CREATE TABLE `table_InnoDB` (
-> `id` int(10) unsigned NOT NULL DEFAULT 0,
-> `name` varchar(120) NOT NULL DEFAU
标签: Mariadb
azure-container-instances
我正在尝试将我的MariaDB存储在Azure存储帐户中
在我的YAML中,我定义了MariaDB图像:
- name: mariadb
properties:
image: mariadb:latest
environmentVariables:
- name: "MYSQL_INITDB_SKIP_TZINFO"
value: "1"
- name: "MYSQL_DATABASE"
value: "metrics"
当我尝试使用xtrabackup sst选项将节点加入群集时,会出现以下错误:
WSREP:未能从以下位置读取“就绪”:WSREP_sst_xtrabackup--角色“joiner”--地址
如何解决此问题?解决方案是手动运行wsrep\u sst\u xtrabackup,它报告了
Can't find nc in the path
运行
yum install nc
修正了这个问题
我使用MariaDB中的动态列功能创建了一个表:
创建表项
(id INT非空主键自动递增,
名称varchar(100)不为空,
属性(BLOB);
插入到项目(名称、属性)值中
('T-shirt',创建栏('color','blue','size','XL','price''30.0');
动态列包含color、size和price列。例如,如何将列price重命名为amount,同时实际保留此列的内容?我知道COLUMN\u ADD和COLUMN\u DELETE,但我没有看到COLU
我想将付款类型3添加到所有业务中。我怎样才能和MariaDB一起做呢
我喜欢这样:
insert into business_payment_type
(id_payment_type, active)
select "4", "1"
from business_payment_type
where id_business in (select distinct(id_business)
fro
我正在尝试将maxscale设置为使用schemarouter和readwritesplit。
我的mysql数据库有很多碎片。每个碎片都有一个奴隶
因此,我们的想法是在主服务器上使用一个schemarouter,在从服务器上使用一个schemarouter来代理所有碎片。然后在readwritesplit中使用这两个服务
This cause the following issue:
2017-02-10 14:57:48 error : Failure loading users da
我有一个由一个用户模块和两个性能模块组成的MariaDB Columnstore集群。(UM1、PM1和PM2)
现在我想添加第二个用户模块(UM2),它连接到PM1和PM2
我是否必须从地面安装所有四个模块,或者我是否可以只在UM2上安装MariaDB Columnstore并参考UM1、PM1和PM2,而不在UM1、PM1和PM2上安装软件
(UM1、PM1和PM2正在生产中,因此无法重新安装)根据,可以将用户模块添加到MariaDB ColumnStore。我强烈建议首先在您的测试环境中测
请注意,我一个月前刚刚开始开发,并且自学成才,所以请容忍我在这里。首先,当我检查mariadb的状态时,有一个警告:innodb回滚段处于活动状态。我想回滚一个更新命令,这是否仍然可行?我如何做?一旦提交或自动提交,您就不能回滚。一旦提交或自动提交,您就不能回滚。
我对MS Sql Server有以下查询:
SELECT DISTINCT
OnTable.name as OnTable,
AgainstTable.name as AgainstTable
FROM sysforeignkeys fk
INNER JOIN sysobjects onTable ON fk.fkeyid = onTable.id
INNER JOIN
a已将我的DB服务器从10.1.36升级到10.2.30,在运行命令mysql\u upgrade后,它在步骤4失败。请看一下屏幕截图。有人知道怎么回事吗
我认为,在mysql用户能够访问/var/log/mysql/log.CSV文件之前,您必须向mysql用户授予/var/log/and/var/log/mysql/slow\u log.CSV目录的读取和执行权限。请查看您的my.cnf并发布以log\u slow\u querys=
MySQL说:文档
1064-您的SQL语法有错误;检查与您的MariaDB服务器版本相对应的手册,以了解在第1行使用“匹配、下注金额、货币、状态、isDeleted VALUES a033bbae-e472-4f86-a4”附近的正确语法
DB Table:我认为这是因为match是一个类似WHERE和FROM的SQL语句。
请在反勾号之间使用列名进行尝试:
INSERT INTO wagers (id, creator_addr, title, platform,
region, mat
标签: Mariadb
query-optimizationmariadb-10.4
有没有办法优化这种查询
请参阅下面给出的示例
Select KPI.*,
(select sum(NP_2g_crfs) from kpi_table where date_upload = '14/01/2020') as num_sum,
(select sum(NP_2g_den) from kpi_table t1 where t1.id >= kpi_table .id) den_sum,
(select sum(NP_2g_num) from kpi_table t1 whe
标签: Mariadb
rowcalculated-columns32-bitrow-number
我使用的是Windows 32位,所以我可以使用的最新版本是5.2。我的问题是,如何获得显示字段当前行号的计算列
例如,我可以使用以下内容创建计算列:
updatemytable SET mycalculated column=some\u other\u column/2
但是如何获得行号呢?您是指整个表中的行号,还是指一组特定的行?我希望列中的每个单元格都说明该单元格所在的行号。我评论了一个有答案的链接现在我想知道如何得到总行数,并将其推到该链接中的行计算公式中为什么需要总行数?无论如何,这
上一页 1 2 3 4 5 6 ...
下一页 最后一页 共 14 页