ubuntu用apt-get方法安装mysql5 + Apache2 + PHP5+Phpmyadmin
错误#1045 - Access denied for user ‘pmausr‘@‘localhost‘ (using password: YES)
在config.inc.php 文件中
编译安装
./configure --prefix= /app/mysql --with-charset=gbk
make
设置权限
chown -R root .
设定root能访问 /app/mysql
chown -R mysql var
设定mysql用户能访问 /app/mysql/var ,里面存的是mysql的数据库文件
chown -R mysql var/.
设定mysql用户能访问 /app/mysql/var下的所有文件
chown -R mysql var/mysql/.
设定mysql用户能访问 /app/mysql/var/mysql下的所有文件
chgrp -R mysql .
设定mysql组能够访问 /app/mysql
设置完成后,基本上就装好了,好了,我们运行一下我们的mysql:
/app/mysql/bin/mysqld_safe --user=mysql &
如果没有问题的话,应该会出现类似这样的提示:
[1] 42264
Starting mysqld daemon with databases from /app/mysql/var
这就证明你安装成功了
cd /app/mysql/bin
./mysqladmin –h localhost.localdomain –u root password ‘123456’
启动:
/app/mysql/bin/mysqld_safe --user=mysql &
如果mysql的进程已经启动他会提示A mysqld process already exists,表明mysql进程已经存在,否则会提示
[1] 42264
Starting mysqld daemon with databases from /app/mysql/var
启动成功。
停止:
/app/mysql/bin/mysqladmin shutdown
执行命令后输入查看进程命令看
mysql
进程是否已经关闭:
ps –ax
查看后
mysql
的进程已经关闭。
启动
mysql
,再查看
mysql
进程,
mysql
已经启动
如果你为 MySQL Administrator root 帐号(非作业系统的 root )设了密码,要停止 MySQL 则必须像下列这样做, MySQL 会询问你 root 的密码后才会执行 shutdown 的工作:
/app/mysql/bin/mysqladmin -u root -p shutdown
如果你为 MySQL Administrator root 帐号(非作业系统的 root )设了密码,要停止 MySQL 则必须像下列这样做, MySQL 会询问你 root 的密码后才会执行 shutdown 的工作:
/app/mysql/bin/mysqladmin -u root -p shutdown
自动启动mysql
vi /etc/rc.d/rc.local
在后面增加一行启动mysql的命令如下:
/app/mysql/bin/mysqld_safe –user=mysql
按Esc键,输入:wq保存退出。
重启系统:
reboot
等系统启动后再查看进程,mysql进程已经存在,表明mysql自动启动成功。
最后,建好资料库与资料表后,把
addbook
资料库中所有资料表的使用权限(
select
、
insert
、
update
、
delete
)授权给
dafen@localhost
(再次提醒,此处的
dafen
为
MySQL
的使用者帐号,而非作业系统的
dafen
帐号):
grant select,insert,update,delete on addbook.* to dafen@localhost identified by ‘123456‘;
grant all privileges on addbook.* to dafen@localhost identified by ‘123456‘;
(授予所有权限)
quit
退出后用dafen用户登陆mysql
/app/mysql/bin/mysql -u dafen -p123456 addbook
mysql> status
--------------
/app/mysql/bin/mysql Ver 14.7 Distrib 4.1.9, for pc-linux-gnu (i686)
Connection id: 146
Current database: addbook
Current user: dafen@localhost
SSL: Not in use
Current pager: stdout
Using outfile: ‘‘
Using delimiter: ;
Server version: 4.1.9-log
Protocol version: 10
Connection: Localhost via UNIX socket
Server characterset: gbk
Db characterset: gbk
Client characterset: gbk
Conn. characterset: gbk
UNIX socket: /tmp/mysql.sock
Uptime: 1 day 52 min 27 sec
Threads: 1 Questions: 53 Slow queries: 0 Opens: 14 Flush tables: 2 Open tables: 3 Queries per second avg: 0.001
然后输入几条sql语句查看一下dafen用户是否拥有相关权限。
收回资料库使用权限的方法如下(以
MySQL root
进入):
mysql> revoke delete on addbook.* from dafen@localhost;
Query OK, 0 rows affected (0.00 sec)
mysql> revoke all privileges on addbook.* from dafen@localhost;
Query OK, 0 rows affected (0.00 sec)
mysql> revoke delete on addbook.* from dafen@localhost;
Query OK, 0 rows affected (0.00 sec)
mysql> revoke all privileges on addbook.* from dafen@localhost;
Query OK, 0 rows affected (0.00 sec)
Mysql 全部用户删除后重建:
关闭Mysql服务,用--skip-grant-tables重新启动:
#/etc/init.d/mysql.server stop
#/usr/local/mysql/bin/mysqld_safe --skip-grant-tables &
mysql>insert into mysql.user(host,user,password) values (‘localhost‘,‘root‘,password(‘mima‘));
mysql>flush privileges;
mysql>grant all on *.* to root@localhost;
然后退出重启服务.
关闭Mysql服务,用--skip-grant-tables重新启动:
#/etc/init.d/mysql.server stop
#/usr/local/mysql/bin/mysqld_safe --skip-grant-tables &
mysql>insert into mysql.user(host,user,password) values (‘localhost‘,‘root‘,password(‘mima‘));
mysql>flush privileges;
mysql>grant all on *.* to root@localhost;
然后退出重启服务.
phpMyAdmin提示:
错误#1045 - Access denied for user ‘pmausr‘@‘localhost‘ (using password: YES)
现在我更改好了,方法是这样的:
在config.inc.php 文件中
搜索「$cfg[‘Servers‘][$i][‘auth_type‘] = ‘cookie‘;」,改成「$cfg[‘Servers‘][$i][‘auth_type‘] = ‘http‘;」
搜索「$cfg[‘Servers‘][$i][‘controluser‘] = ‘pmausr‘;」,改成「$cfg[‘Servers‘][$i][‘controluser‘] = ‘root‘;」
搜索「$cfg[‘Servers‘][$i][‘controlpass‘] = ‘pmapass‘;」,改成「$cfg[‘Servers‘][$i][‘controlpass‘] = ‘MYSQL的密码;」
如果报错:
Wrong permissions on configuration file, should not be world writable!
#chmod 755 config.default.php
Wrong permissions on configuration file, should not be world writable!
#chmod 755 config.default.php
Windows: 1.用系统管理员登陆系统。
2.停止MySQL的服务。
3.进入命令窗口,然后进入MySQL的安装目录,比如我的安装目录是c:\mysql,进入C:\mysql\bin 4.跳过权限检查启动MySQL, c:\mysql\bin>mysqld-nt --skip-grant-tables 5.重新打开一个窗口,进入c:\mysql\bin目录,设置root的新密码 c:\mysql\bin>mysqladmin -u root flush-privileges password "newpassword" c:\mysql\bin>mysqladmin -u root -p shutdown 将newpassword替换为你要用的root的密码,第二个命令会提示你输入新密码,重复第一个命令输入的密码。 6.停止MySQL Server,用正常模式启动Mysql 7.你可以用新的密码链接到Mysql了。 Unix&Linux: 1.用root或者运行mysqld的用户登录系统; 2.利用kill命令结束掉mysqld的进程; 3.使用--skip-grant-tables参数启动MySQL Server shell>mysqld_safe --skip-grant-tables & 4.为
root@localhost设置新密码 shell>mysqladmin -u root flush-privileges password "newpassword"5.重启MySQL Server(完)