diff --git a/lib/db.php b/lib/db.php
index 347deac8519db437a91fa4c9b6aebcc7e0733f02..9699b216f6f712d71bdebac6baa627045806aa6f 100644
--- a/lib/db.php
+++ b/lib/db.php
@@ -292,8 +292,10 @@ class OC_DB {
 						'username' => $user,
 						'password' => $pass,
 						'hostspec' => $host,
-						'database' => $name
-					);                    
+						'database' => $name,
+						'charset' => 'UTF-8'
+					);
+					$options['portability'] = $options['portability'] - MDB2_PORTABILITY_EMPTY_TO_NULL;
 					break;
 				default:
 					return false;
diff --git a/lib/files/cache/cache.php b/lib/files/cache/cache.php
index f288919df747157792a2a9aafa5a9c3012aed681..1ff66f11f180de599169d60b19991d7cb719ebd7 100644
--- a/lib/files/cache/cache.php
+++ b/lib/files/cache/cache.php
@@ -203,7 +203,10 @@ class Cache {
 
 			$query = \OC_DB::prepare('INSERT INTO `*PREFIX*filecache`(' . implode(', ', $queryParts) . ')'
 				. ' VALUES(' . implode(', ', $valuesPlaceholder) . ')');
-			$query->execute($params);
+			$result = $query->execute($params);
+			if (\MDB2::isError($result)) {
+				\OCP\Util::writeLog('cache', 'Insert to cache failed: '.$result, \OCP\Util::ERROR);
+			}
 
 			return (int)\OC_DB::insertid('*PREFIX*filecache');
 		}