
PHP Error[2]: PDO::__construct(): [2002] No such file or directory (trying to connect via unix:///var/mysql/mysql.sock)
但是查过了MAMP自带的php5.2和php5.3的php.ini发现里面的几处默认mysql连接文件default_socket设置都没有问题,于是google之。发现原来命令行的php是用了MAC OS自带的php,需要修改MAC OS自带的php.ini。 具体步骤如下:
如果你已经有/private/etc/php.ini就不需要再拷贝一份php.ini.default出来了。
cd /private/etc/
sudo cp php.ini.default php.ini
sudo vi php.ini
把php.ini里面所有的default_socket都改成MAMP的mysql.sock的正确位置即可。
pdo_mysql.default_socket=/Applications/MAMP/tmp/mysql/mysql.sock
mysql.default_socket = /Applications/MAMP/tmp/mysql/mysql.sock
mysqli.default_socket = /Applications/MAMP/tmp/mysql/mysql.sock
不知道你服务器环境和连接数据库部分的代码,怎么知道是哪里出错了?这是在网上找的的,希望对你有些帮助。
windowsxp系统 mysql-5.0.11-beta-win32
提示:1045 access denied for user 'root'@'localhost' using password yes
前几天都好好的,昨天没弄,结果今天晚上过来提示上面的这个错误,重启mysql还是不可以
网上的方法看了几个但是不知道怎么弄
方法一:
# /etc/init.d/mysql stop
# mysqld_safe --user=mysql --skip-grant-tables --skip-networking &
# mysql -u root mysql
mysql>UPDATE user SET Password=PASSWORD(’newpassword’) where USER=’root’
mysql>FLUSH PRIVILEGES
mysql>quit
# /etc/init.d/mysql restart
# mysql -uroot -p
Enter password: <输入新设的密码newpassword>
mysql>
方法二:
直接使用/etc/mysql/debian.cnf文件中[client]节提供的用户名和密码:
# mysql -udebian-sys-maint -p
Enter password: <输入[client]节的密码>
mysql>UPDATE user SET Password=PASSWORD(’newpassword’) where USER=’root’
mysql>FLUSH PRIVILEGES
mysql>quit
# mysql -uroot -p
Enter password: <输入新设的密码newpassword>
mysql>
另一个方法
Windows:
1. 管理员登陆系统,停止mysql服务或者结束mysqld-nt进程
2. 进入命令行,来到mysql的安装目录.假设安装目录为 d:\mysql\ , CMD进入命令行
3. 运行 d:\mysql\bin\mysqld-nt --skip-grant-tables 启动mysql,关闭权限的检查
4. 运行 d:\mysql\bin\mysqladmin -u root flush-privileges password "newpassword" 重设root密码
5. 重新启动mysql服务
第4步也可以直接修改mysql表,所用到的SQL语句同linux部分,这里就不再重复了.
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)