1. 在Windows启动mysqld服务。
在windows95/98和Windows NT下是不同的,前者可以用:mysqld直接启动并用mysqladmin -u root shutdown关闭Mysql服务程序。但是在Windows NT/2000下必须用:
NET START mysql
NET STOP mysql
如果在NT/2000下,你还没有把mysql安装成服务,则必须用以下方式:
mysqld-nt --install //安装为默认服务
mysqld-nt --remove //删除安装的服务
mysqld-nt --verbose --help|more //查看更多选项
mysqld-nt --basedir=name //可以用来指定mysqld的安装中径,如你把MySQL转移到D:\programs\mysql目录下,即可mysqld-nt --basedir=D:\programs\mysql
2. 连接MySQL出现以下错误error:'Access denied for user 'ODBC'@'localhost' (using password: NO)'时,通常是因为没有足够的用户权限。如mysqladmin reload,此时必须利用-u –p参数指定用户。
mysqladmin –uroot –p reload
3. 在默认情况下,不能用root身份与远端数据库连接。如mysql–h192.168.3.48 –uroot -p
会显示错误,Host *** is not allowed to connect to mysql service。此时我们可以在192.168.3.48机器上创建一个新的MySQL用户,从而用该用户进行登录。
格式:grant select on 数据库.* to 用户名@登录主机 identified by "密码"
例如: mysql> GRANTALL PRIVILEGES on *.* to test@’%’ identified by ‘test’
创建一个用户test,密码为test,可以在本机的数据库上进行任何操作。这样是十分危险的。我们可以限制某一个用户只能在库test的abc表上进行查询等操作:
GRANT ALL PRIVILEGES ON test.abc TO user1@’%’ IDENTIFY BY ‘user1’
然后用:FLUSHPRIVILEGES
来重新加载用户表
注:user1@’%’表示可以是任何主机上的user1用户,而user1@localhost则表示是当前主机上的用户。
可以查看所有用户信息,该信息在系统库mysql的user表中。
select * from user;
当然也可以用insert into直接增加用户信息
mysql> INSERT INTO user VALUES('localhost','monty',PASSWORD('something'), 'Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y') mysql> INSERT INTO user VALUES('%','monty',PASSWORD('something'), 'Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y') mysql> INSERT INTO user SET Host='localhost',User='admin', Reload_priv='Y', Process_priv='Y'; mysql> INSERT INTO user (Host,User,Password) VALUES('localhost','dummy',''); mysql> FLUSH PRIVILEGES; |
4. 修改root用户密码,除了用mysqladmin修改外,还可以用以下:
mysql> use mysql
mysql> update user set password=PASSWORD('test') whereuser='root';
mysql> exit
mysqladmin reload –uroot –p
即可将密码修改为test