日期:2014-05-16  浏览次数:20919 次

[转]Mysql 4 Ubuntu 安装及用户登录

?

安装MySQL
要安装 MySQL,可以在终端提示符后运行下列命令:
?
sudo apt-get install mysql-server mysql-client #中途会让你输入一次root用户密码
sudo apt-get install php5-mysql ?#安装php5-mysql 是将php和mysql连接起来
一旦安装完成,MySQL 服务器应该自动启动。 ?www.2cto.com ?
?
sudo start mysql #手动的话这样启动
sudo stop mysql #手动停止
当你修改了配置文件後,你需要重启 mysqld 才能使这些修改生效。
?
要想检查 mysqld 进程是否已经开启,可以使用下面的命令:
?
pgrep mysqld
如果进程开启,这个命令将会返回该进程的 id。
?
ps -A|grep mysql
?
如果存在mysqld,mysqld_safe等进程的话,则会显示出来,如:
?
?4460 pts/0 ? ?00:00:00 mysqld_safe
?4583 pts/0 ? ?00:00:01 mysqld
? www.2cto.com ?
登录MYSQL问题:
?
(1)mysql -u root -p?
?
输入密码之后,错误提示如下:ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES),意思是root的密码不正确。
?
解决办法如下:
?
a.sudo mysqld_safe --user=root --skip-grant-tables --skip-networking &
?
输入命令之后,提示信息如下:
?
[1] 5166
root@jungsagacity:/home/jung# 120521 18:46:32 mysqld_safe Logging to syslog.
120521 18:46:32 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
?
如果提示信息为:
?
[2] 4928
root@jungsagacity:/home/jung# 120521 18:44:40 mysqld_safe Logging to syslog.
120521 18:44:40 mysqld_safe A mysqld process already exists
?
表示mysqld_safe进程存在,可以通过
?
ps -A|grep mysql 查看mysqld_safe进程ID
?
kill -9 -xxxx ? ? ? ? ? ?终结ID为xxxx的进程
?
下面继续输入命令:
?
mysql -u root mysql ? ? 表示以root用户登录到mysql数据库当中
?
select * from user; ? ? ? ?可以看到登记的用户名和密码等详细信息。此时会看到root 对应的密码是 123456. ?www.2cto.com ?
?
实际上我们输入
?
?mysql -u root -p?
?
enter password: 123456
?
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
?
重新修改root密码:
?
update user set password=PASSWORD('123456') where user='root' and host='localhost';
?
flush privileges; ? ? ?这一句话必须的输入,否则推出mysql客户端之后,依然登录不了。
?
(2)新建用户无法登录
?
以root用户身份登录到数据库mysql之后之后,可以新建一个本地的用户jun,推出客户端之后,以jun进行登录,出现错误信息
?
ERROR 1045 (28000): Access denied for user 'wujun'@'localhost' (using password: YES)
?
出现这个错误主要有以下亮点错误:
?
a.新建用户的时候,密码以字符串'xxxxxx'的形式输入,而不是以PASSWORD('xxxxxx')形式输入
? www.2cto.com ?
正确的语句:
?
mysql> insert into user(host,user,password) values('local',jun,PASSWORD('xxxxxx'));
?
mysql> flush privileges;
?
b.正确的输入插入语句之后,没有输入
?
mysql> flush privileges;