初学MySql5 所应了解的知识和常见问题
2007-07-24 10:58:03 来源:WEB开发网并重起Apache。
Q:为什么我不能看孵化池资料?
A:MYSQL.CN的孵化池是专门为初学者提供学习的地方,这里我就不多介绍了,详情请访问:http://bbs.mysql.cn/thread-369-1-1.html。
Q:能中文数据库名称么?
A:可以,但是不推荐,用起来不方便。
Q:如果我忘记了root密码,怎么办?
A:
在windows下:
打开命令行窗口,停止mysql服务: Net stop mysql
启动mysql,一般到mysql的安装路径,找到 mysqld-nt.exe
执行:mysqld-nt --skip-grant-tables
另外打开一个命令行窗口,执行mysql
>use mysql
>update user set password=password("new_pass") where user="root";
>flush privileges;
>exit
用Ctrl+Alt+Del,找到mysqld-nt的进程杀掉它,在重新启动mysql-nt服务,就可以用新密码登录了
在linux下:
如果 MySQL 正在运行,首先杀之: killall -TERM mysqld。
启动 MySQL :bin/safe_mysqld --skip-grant-tables &
就可以不需要密码就进入 MySQL 了。
然后就是
>use mysql
>update user set password=password("new_pass") where user="root";
>flush privileges;
重新杀 MySQL ,用正常方法启动 MySQL 。
Q:为什么出现如下的提示:
[root@0-8-2-df-fa-ee ~]# mysql
ERROR 2002 (HY000): Can't connect
to local MySQL server through socket '/tmp/mysql.sock'
注:也可能是其它路径下的mysql.sock
A:说明mysql服务没有启动,mysql.sock是mysql服务启动后启动生成的文件,
一般先杀掉mysql服务:killall mysql
然后,再根据自己的安装情况启动mysql即可。比如,安装的时候,用的是
./configure --prefix=/usr/local/mysql的
用下面的命令启动:
/usr/local/mysql/bin/mysqld_safe --user=mysql &
之后再去执行
/usr/local/mysql/bin/mysql -u root -p
登录进入mysql数据库
如果还不行的话,一次执行下面的命令:
sync
reboot;重启计算机,执行时请小心!!!
Q:为什么出现下面的错误
#1251 - Client does not support authentication protocol
requested by server; consider upgrading MySQL client
A:你使用的数据库是4.1以上,用命令行连接MySQL数据库后,执行下面的命令:
UPDATE mysql.user SET password=OLD_PASSWORD("your_password")
WHERE Host="your_host" AND User="your_username" ;
即可解决。
your_password:改成你连接数据库的密码,比如 123
your_host:改成你连接数据库的主机,如果是本地的话,就是localhost
your_username:改成你连接数据库的用户,比如 root
Q:为什么mysql提示我:Data too long for column ……
A:首先确保你的数据大小符合你的字段大小。
再检查你的数据库编码,数据库的编码是否与操作数据库工具的编码一致!
更多精彩
赞助商链接