你的位置:首页 > 操作系统

[操作系统]php laravel mysql无法连接处理方案(linux服务器配置)


阿里云 Ubuntu 14.*上搭建laravel环境

之前做项目时都是搭建在自己的服务器上,可是自己的那个服务器是很久以前一点点配置好的,也是各种百度,该忘记的都忘了,

所以前一段在客户的阿里云Ubuntu上搭建项目时发现又出了问题,

laravel框架连接mysql报错,具体错误码记不住了,大概意思就是PDO连接mysql失败,百度很久也没有解决,最后还是自己摸索好了。现在分享一下,以便自己记住。

服务器安装

首先Ubuntu安装东西的命令是apt-get install xxxx

需要安装什么呢 这是主要的:毫无疑问 Apache2 mysql php都要装 Ubuntu有提示怎么装

重点

mysql 分为mysql_client mysql_server 都要装

php 安装时应该是php5 但是也要装php5-mysql(这就是laravel连不上的原因)装了这个,

$php -m中才会有PDO pdo_mysql,才能连接上laravel

配置文件

/etc/apache2/apache2.conf是Apache的配置文件

/etc/php5/下面是php的配置文件 常用配置在 /etc/php5/apache2/php.ini中,

需要看一眼,在/etc/php5/apache2/conf.d/20-pdo_mysql.ini 中 是不是有`extension=pdo_mysql.so`

mysql的配置网上到处都是,但是有一点我也是刚学到的,就是在服务器上搭建项目,本地用数据库管理软件如navicat,连接数据库连不上,

原来 是需要先配置 mysql的

 /etc/mysql/my.cnf 是mysql的配置文件,先找到

bind-address = 127.0.0.1

这行是只允许本机访问数据库,把它注释掉(最前面加个#),保存 然后,执行命令 

# mysql -u root -p  

就进入了mysql命令模式:

use mysql;

不要忘记分号 `mysql>use mysql;`

然后用这个命令  GRANT ALL PRIVILEGES ON xxxxxx.* TO 'aaaaaaa'@'%' IDENTIFIED BY 'bbbbbbbb' WITH GRANT OPTION;

其中 aaaaa表示想要在远程登陆数据库的***账号***,

bbbbbb是***密码***,

xxxxxx是允许该账号远程访问的database,

mysql中可能有很多的database,只允许aaaa用户访问某个,就把xxxx替换成那个名字,如果是想允许访问全部的database,就写成 `*.*`

目前只能想起来这么多了。后悔博客开晚了,应该早点记录下来,不然自己以后还要再踩一遍坑。

如果有什么错误,或者意见,或者问题 请告诉我 谢谢!