ubuntu mysql安装和用户登录
安装MySQL 要安装 MySQL,可以在终端提示符后运行下列命令:
sudo apt-get install mysql-server mysql-client
#中途会让你输入一次root用户密码
sudo apt-get install 5-mysql
#安装php5-mysql 是将php和mysql连接起来 一旦安装完成,MySQL 服务器应该自动启动。
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
登录MYSQL问题:
(1)mysql -u root -p
输入密码之后,错误提示如下:ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES),意思是root的密码不正确。
解决办法如下:
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. 实际上我们输入 -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')形式输入
正确的语句: mysql> insert into user(host,user,password) values('local',jun,PASSWORD('xxxxxx'));
mysql> flush privileges;
b.正确的输入插入语句之后,没有输入 mysql> flush privileges;