Typo3不会连接到mysql

时间:2013-03-04 18:23:48

标签: mysql content-management-system typo3

刚刚在Linux Mint上安装了Typo3 Version 6,Government软件包14.安装了最新版本的PHP& MYSQL。编译PHP:

./configure --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql  --with-openssl --with-zlib --enable-soap --enable-hash --with-pcre-regex --with-curl --with-gd --with-mysqlih-mysql  --with-openssl --with-zlib --enable-soap

make

make install

Typo3安装程序出现以下错误:

  

没有与数据库的连接!
  (用户名:typo3,主机:localhost,使用密码:是)
  转到步骤1并输入有效的用户名和密码!

我输入的用户名和密码是正确的。我可以使用

这些凭据连接到mysql
  1. phpMyAdmin web界面
  2. mysql -u typo3 -p typo3db
  3. 谷歌搜索并发现有些人遇到了这个问题,原因是三件事之一:

    1. 在数据库名称中加下划线 - 正如我的数据库名称所示,它不适用于我的情况
    2. 配置不允许与mysql的持久连接 - 不适用于我的情况,因为我目前允许持久连接。
    3. typo3文件的权限 - 建议修复将所有文件设置为755或777(在我看来是允许的方式),但我试过这个以排除权限问题。在我的案例中没有解决问题。
    4. 我为mysql启用了常规日志记录。当我在typo3安装程序中输入mysql用户的用户名和密码时,它会立即显示无法连接的错误,但是mysql日志显示没有登录尝试。相反,当我使用phpMyAdmin登录时,它确实显示成功,当我故意键入错误的密码时,日志显示它被拒绝。

      这一切对我来说意味着没有从Typo3到mysql的连接被启动,但我现在不知道为什么。

      关于问题可能是什么或接下来应该检查什么的任何想法?

5 个答案:

答案 0 :(得分:2)

我有类似的问题,但发现我必须使用服务器IP地址而不是localhost。奇怪的是,localhost过去一直没有问题。

答案 1 :(得分:1)

我遇到了完全相同的问题。 通过在PHP中启用所需的模块来修复它。 它们列在根TYPO3文件夹中的INSTALL.txt文件中。

- fileinfo
- filter
- GD2
- JSON
- mysqli
- openssl
- pcre
- session
- SOAP
- SPL
- standard
- xml
- zlib

我相信这个案例中的关键模块是mysqli。

答案 2 :(得分:0)

marc_s,

您是否检查了文件权限?

对于TYPO3,我使用TYPO3安装文件夹中的这些命令:

find . -type d ! -name .svn -exec chmod 755 {} \; && find . -type f ! -name .svn -exec chmod 644 {} \;

chmod -R g+wX fileadmin typo3temp typo3conf uploads

你还可以这篇文章: http://dmitry-dulepov.com/article/migrating-typo3-installation-to-a-different-server.html

Bonne chance

答案 3 :(得分:0)

我的解决方案是: 必须以这种方式设置/ var / lib / mysql的文件访问权限:

[root@localhost phpmyadmin]# cd /var/lib
[root@localhost lib]# chmod 755 mysql
[root@localhost lib]# ls -ld mysql
drwxr-xr-x 16 mysql mysql 4096 Dez 16 20:14 mysql/

必须在/ var / lib / mysql下的所有文件和文件夹中设置mysql用户和mysql组。 在此更改后,我可以使用安装工具登录到TYPO3数据库。

答案 4 :(得分:0)

我有与typo3 4.6相同的症状,其安装程序没有连接。我把它追溯到这个callstack:

class.ux_t3lib_db.php / sql_pconnect / handler_init

handler_init函数有以下代码:

        if (!$cfgArray['config']['database']) {
            // Configuration is incomplete
            return;
        }

数据库属性为空。我不得不在localconf.php中使用此行设置它$ typo_db =“mydatabasename”;

我还在MySQL中使用此名称创建了我的数据库。