ZZB 发表于 2013-3-29 14:30:29

在SAE上遇到the --read-only

本帖最后由 ZZB 于 2013-3-29 14:39 编辑

Error Number: 1290

The MySQL server is running with the --read-only option so it cannot execute this statement

有没有人遇到类似的问题呢?我使用的是社区发布的CodeIgniter 2.1.3 for SAE

这是跟主从库有关?SAE不是会自己判断读写然后选择主从库吗?

使用社区发布的CodeIgniter 2.1.3 for SAE 还需要再怎么修改吗?在model中直接使用$this->load->database();对吗?

下面是我的部分代码
application\config\database.php
$active_group = 'default';$active_record = TRUE;

$db['default']['hostname'] = SAE_MYSQL_HOST_M;//主库
$db['default']['hostname_s'] = SAE_MYSQL_HOST_S;//从库
$db['default']['username'] = SAE_MYSQL_USER;
$db['default']['password'] = SAE_MYSQL_PASS;
$db['default']['database'] = SAE_MYSQL_DB;
$db['default']['port'] = SAE_MYSQL_PORT;
$db['default']['dbdriver'] = 'mysql';
$db['default']['dbprefix'] = '';
$db['default']['pconnect'] = FALSE;
$db['default']['db_debug'] = TRUE;
$db['default']['cache_on'] = FALSE;
$db['default']['cachedir'] = ''; //SAE数据库缓存, 使用kvdb进行缓存. 此配置值为key前缀, 例如 "dbcache_". 若不设置, 则不缓存
$db['default']['char_set'] = 'utf8';
$db['default']['dbcollat'] = 'utf8_general_ci';
$db['default']['swap_pre'] = '';
$db['default']['autoinit'] = TRUE;
$db['default']['stricton'] = FALSE;

ZZB 发表于 2013-3-29 14:43:57

我直接注释掉从库那句

Hex 发表于 2013-4-1 11:55:29

直接使用 $this->load->database(); 是没问题的。
你的意思是有从库那句话就报错?
你不想使用从库?

ZZB 发表于 2013-4-1 14:48:28

Hex 发表于 2013-4-1 11:55 static/image/common/back.gif
直接使用 $this->load->database(); 是没问题的。
你的意思是有从库那句话就报错?
你不想使用从库? ...

如果从库那句不注释掉,那么在写入操作时会数据库the --read-only,没法写入。

月夜风 发表于 2013-4-1 15:01:15

本帖最后由 月夜风 于 2013-4-1 15:06 编辑

本地测试环境? 在实际SAE中是没有这个问题的。

我用本地环境是用MiniSAE那个, 也挺方便的

PS : SAE的系统是不会自动判断读写来选择主从库的

Hex 发表于 2013-4-1 15:02:24

ZZB 发表于 2013-4-1 14:48 static/image/common/back.gif
如果从库那句不注释掉,那么在写入操作时会数据库the --read-only,没法写入。 ...

你执行了什么 SQL 语句?
貌似是和 SAE 的 MySQL 服务器有关系。

ZZB 发表于 2013-4-1 16:14:09

月夜风 发表于 2013-4-1 15:01 static/image/common/back.gif
本地测试环境? 在实际SAE中是没有这个问题的。

我用本地环境是用MiniSAE那个, 也挺方便的


直接在SAE上面测试的。
如果SAE不会自动判断的话,那么我们在进行读写操作时应该怎么处理呢?

ZZB 发表于 2013-4-1 16:15:17

Hex 发表于 2013-4-1 15:02 static/image/common/back.gif
你执行了什么 SQL 语句?
貌似是和 SAE 的 MySQL 服务器有关系。

只是一句insert而已,
读正常,
只有insert、update、del操作才会爆出数据库只写

Hex 发表于 2013-4-1 16:19:49

ZZB 发表于 2013-4-1 16:15 static/image/common/back.gif
只是一句insert而已,
读正常,
只有insert、update、del操作才会爆出数据库只写 ...

从表面看,貌似是从库不允许写,从库是 read-only 的。
具体我还得回去看看代码。
你也可以看看相关源码,呵呵

ZZB 发表于 2013-4-1 16:27:44

Hex 发表于 2013-4-1 16:19 static/image/common/back.gif
从表面看,貌似是从库不允许写,从库是 read-only 的。
具体我还得回去看看代码。
你也可以看看相关源码 ...

我现在就是在application\config\database.php 注释掉了从库地址,暂时还一切正常。但如果可以,我还是希望可以使用从库的。
页: [1] 2 3 4
查看完整版本: 在SAE上遇到the --read-only