我正在尝试在Ubuntu 12.04 LTS上安装MariaDB.
我按照https://askubuntu.com/questions/64772/how-to-install-mariadb和MariaDB.org 提供的说明进行选择下载.
最后一步是sudo apt-get install mariadb-server
返回:
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
mariadb-server : …
Run Code Online (Sandbox Code Playgroud) 迁移我的数据库时出现此错误,下面是我的代码,后面是我在尝试运行迁移时遇到的错误.
码
public function up()
{
Schema::create('meals', function (Blueprint $table) {
$table->increments('id');
$table->integer('user_id')->unsigned();
$table->integer('category_id')->unsigned();
$table->string('title');
$table->string('body');
$table->string('meal_av');
$table->timestamps();
$table->foreign('user_id')
->references('id')
->on('users')
->onDelete('cascade');
$table->foreign('category_id')
->references('id')
->on('categories')
->onDelete('cascade');
});
}
Run Code Online (Sandbox Code Playgroud)
错误信息
[Illuminate\Database\QueryException]
SQLSTATE[HY000]: General error: 1005 Can't create table `meal`.`#sql-11d2_1
4` (errno: 150 "Foreign key constraint is incorrectly formed") (SQL: alter
table `meals` add constraint meals_category_id_foreign foreign key (`catego
ry_id`) references `categories` (`id`) on delete cascade)
Run Code Online (Sandbox Code Playgroud) 我被要求检查Mariadb,因为Centos暂时不提供MySQL 5.5.我已经读过xtradb服务器作为innodb的一个下降.
使用一个或另一个有什么好处,因为如果它们相同,它们就不会被称为同名?
你认为我应该转向Mariadb吗?由于更新(如果有的话),我将来可能遇到什么样的问题.
我知道MySQL的创始人是Mariadb的后盾,Oracle现在正在管理MySQL.作为一个棘手的决定似乎有点棘手.
提前感谢您的意见,
更新,我问这里的问题,因为谷歌没有显示任何最近的更新.只有一些旧的比较在2012年之前发布
我在与Maria DB相同的主机上有一个spring-boot应用程序,两者都运行正常一段时间.但是在12小时到2天之间,Spring启动应用程序似乎失去了与数据库的连接(stacktrace),并且无法从中恢复.
当我重新启动弹簧应用程序时,一段时间再次正常.
应用程序没有负载,当它失去连接时,应用程序仍在工作,但数据库连接无法恢复.数据库在此期间没有重启(正常运行时间为4周).只有监控服务对每分钟ping一次DB的应用程序进行ping操作.(春季靴子健康)
连接到同一个数据库的其他Java应用程序运行正常,没有任何问题.
我的问题是:
为什么spring无法从该错误中恢复并尝试重新连接到DB?如何设置弹簧重新连接到DB?
2015-02-19 15:25:48.392 INFO 4931 [qtp92662861-19] --- o.s.b.f.xml.XmlBeanDefinitionReader : Loading XML bean definitions from class path resource [org/springframework/jdbc/support/sql-error-codes.xml]
2015-02-19 15:25:48.580 INFO 4931 [qtp92662861-19] --- o.s.jdbc.support.SQLErrorCodesFactory : SQLErrorCodes loaded: [DB2, Derby, H2, HSQL, Informix, MS-SQL, MySQL, Oracle, PostgreSQL, Sybase]
2015-02-19 15:25:48.616 WARN 4931 [qtp92662861-19] --- o.s.jdbc.support.SQLErrorCodesFactory : Error while extracting database product name - falling back to empty error codes
org.springframework.jdbc.support.MetaDataAccessException: Error while extracting DatabaseMetaData; nested exception is com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: No operations allowed after connection closed. …
Run Code Online (Sandbox Code Playgroud) 最近,我读到一则消息称MariaDB是MySQL的替代品,因为根据谷歌,MySQL 对集群/企业版的价格不友好.
现在我在Google上找不到与MariaDB相关的任何内容,所以我希望有人知道.是否可以使用MySQL驱动程序,因为它是100%兼容的?有什么想法吗?
更新
我刚刚发现RedHat也是从MySQL切换到MariaDB的默认数据库管理系统.因此,我当前的项目必须将其切换到MariaDB.
在我安装Mariadb 10之后,Mysql工作台和JPDB客户端都连接并正常工作,所以下一步是用Python编程(使用SQLAlchemy),这似乎需要MySQL-python所以我去更新并得到:"mysql_config not found"I看着"通常的地方",没看到档案......
所以我按照之前关于SO的问题的一些想法 并尝试安装:apt-get install libmysqlclient-dev
让我去了:以下包有未满足的依赖:libmysqlclient-dev:取决于:libmysqlclient18(= 5.5.35-0ubuntu0.13.10.2)但是要安装10.0.10 + maria-1~saucy
哪种打砖墙适合我
这是常见的问题,但我没有选择像这样编码只是为了在Excel文件中获得适当的标题和正文
它是如何开始的
当请求打印时,我首先开始查询以获取数据库中的标头
SELECT instruments.in_id, instrument_parameters.ip_id,
CASE WHEN gv_x_ipid = -1 THEN 'datetime' ELSE '' END xlabel,
CASE WHEN ip_label LIKE '%Reservoir%' THEN 0 ELSE in_order END legendIndex,
CASE WHEN in_name = 'General' THEN ip_label ELSE in_name END ylabel
FROM graph_plot
LEFT JOIN attributes gptype ON gp_type = gptype.at_id
LEFT JOIN graph_value ON gp_id = gv_gpid
LEFT JOIN instrument_parameters ON gv_y_ipid = ip_id
LEFT JOIN attributes pmunit ON ip_unit = pmunit.at_id
LEFT JOIN instrument_reading yvalue ON gv_y_ipid = iv_ipid
LEFT …
Run Code Online (Sandbox Code Playgroud) 在MySQL/MariaDB中,存储uuid的最有效方法是在BINARY(16)列中.但是,有时您希望将其作为格式化的uuid字符串获取.
鉴于以下表结构,我将如何以默认格式化方式获取所有uuids?
CREATE TABLE foo (uuid BINARY(16));
Run Code Online (Sandbox Code Playgroud) 我们在5节点集群的节点1上遇到错误.对于节点1的查询似乎从客户端角度来看是成功的,但是无法插入.我们看到很多autoinc错误,即使autoinc不应该参与更新查询.此外,这似乎会导致性能问题,直到更高优先级的事务发生,导致节点脱机以执行事务重放.以下是error.log
调试的一些条目和设置的演练.我们不知道如何进一步排除故障.
导致事务继续的唯一方法是让所有客户端删除并重建连接池.
设置的一些细节:
以下是一些错误:
150703 5:56:27 [Note] WSREP: DUPKEY error for autoinc
THD 5041, value 133622, off 2 inc 5
150703 5:56:27 [Note] WSREP: retrying insert: INSERT INTO `server_live` (server_id, performance_30, performance_120, performance_300, performance_600, players_online, staff_online, staff_last_seen, uptime, worlds_loaded, chunks_loaded, entities_loaded, tileEntities_loaded) VALUES (79, 100, 100, 99, 99, 2, '{}', staff_last_seen, 15568, 13, 789, 384, 1101) ON DUPLICATE KEY UPDATE performance_30 = 100, performance_120 = 100, performance_300 = 99, performance_600 = 99, players_online = …
Run Code Online (Sandbox Code Playgroud) 如何在我的Rails项目中使用MariaDB而不是MySQL?
当我尝试安装mysql2 gem它返回错误,因为找不到mysqlclient.
这里有一些解决方案,但我在openSUSE 12.3上没有找到任何libmariadbd-dev软件包.