Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/60.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
安装owncloud时出现mysql错误1142_Mysql_Owncloud - Fatal编程技术网

安装owncloud时出现mysql错误1142

安装owncloud时出现mysql错误1142,mysql,owncloud,Mysql,Owncloud,我正在一台运行ArchLinux的机器上安装ownCloud,该机器已经启动并运行了MariaDB、PHP和Apache。 当我尝试启动ownCloud的安装程序时,出现以下错误: Error while trying to create admin user: An exception occurred while executing 'CREATE TABLE `oc_appconfig` (`appid` VARCHAR(32) DEFAULT '' NOT NULL, `configke

我正在一台运行ArchLinux的机器上安装ownCloud,该机器已经启动并运行了MariaDB、PHP和Apache。 当我尝试启动ownCloud的安装程序时,出现以下错误:

Error while trying to create admin user: An exception occurred while executing 'CREATE TABLE `oc_appconfig` (`appid` VARCHAR(32) DEFAULT '' NOT NULL, `configkey` VARCHAR(64) DEFAULT '' NOT NULL, `configvalue` LONGTEXT DEFAULT NULL, INDEX appconfig_config_key_index (`configkey`), PRIMARY KEY(`appid`, `configkey`)) DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE = InnoDB': SQLSTATE[42000]: Syntax error or access violation: 1142 CREATE command denied to user 'owncloud'@'localhost' for table 'oc_appconfig' 
这似乎是一个权限问题。但我不知道为什么会这样:

sql> USE owncloud;
sql> CREATE USER 'owncloud'@'localhost' IDENTIFIED BY 'password';
sql> GRANT ALL PRIVILEGES ON owncloud TO 'owncloud'@'localhost' WITH GRANT OPTION;
如果我检查特权,它们似乎在那里:

sql> SHOW GRANTS FOR 'owncloud'@'localhost';
+-----------------------------------------------------------------------------------------------------------------+
| Grants for owncloud@localhost                                                                                   |
+-----------------------------------------------------------------------------------------------------------------+
| GRANT USAGE ON *.* TO 'owncloud'@'localhost' IDENTIFIED BY PASSWORD '*****************************************' |
| GRANT ALL PRIVILEGES ON `owncloud`.`owncloud` TO 'owncloud'@'localhost' WITH GRANT OPTION                       |
+-----------------------------------------------------------------------------------------------------------------+
2 rows in set (0.00 sec)

我尝试删除用户并再次创建它,但我得到了相同的错误。有什么想法吗?

我建议提供mysql根用户凭据。有鉴于此,ownCloud应该在安装过程中创建自己的具有受限权限的用户。

以下解决方案(在注释中找到)适合我:


假设您拥有实际创建用户的权限,您可以尝试使用“127.0.0.1”来代替(或同时使用)localhost—我认为这有点遥不可及。相反,请确认用于创建新用户的用户具有创建新用户所需的权限

-2014年5月23日9:09()


如果可以,请尝试授予完全权限,看看是否有效:将star dot start上的所有权限授予“owncloud”@“localhost”…您是对的,它必须是权限!看起来它部分起作用了。现在我得到了这样一个信息:“尝试创建管理员用户时出错:SQLSTATE[HY000][1044]拒绝用户'oc_user'@'localhost'对数据库'owncloud'的访问”。假设您拥有实际创建用户的权限,您可以尝试使用“127.0.0.1”代替(或同时使用)localhost——我认为这有点遥不可及。相反,请确认您用于创建新用户的用户具有创建新用户所需的权限。显示授权表明该用户没有在
owncloud
数据库中创建表的权限。要授予数据库中所有对象的权限,请在owncloud上使用“on database dot star”