1.以管理员身份打开doc窗口; 2.开启mysql服务,net start mysql; 对应的关闭服务命令为 net stop mysql。 相应linux上开启mysql:service mysql start;关闭服务:service mysql stop;重启服务:service mysql restart;
C:\WINDOWS\system32>net start mysql 请求的服务已经启动。3.切换到mysql安装目录下的bin目录;
C:\WINDOWS\system32>cd C:\Program Files (x86)\MySQL\MySQL Server 5.5\bin4.执行登录命令,输入密码即可登录成功; 命令:mysql -u <用户名> -p,这个命令会提示输入密码; 也可以执行mysql -u <用户名> -p <密码>,显式输入密码,一般用于java程序直接操作mysql。
C:\Program Files (x86)\MySQL\MySQL Server 5.5\bin>mysql -u root -p命令:mysql -h -P -u <用户名> -p
C:\WINDOWS\system32>mysql -h 192.168.5.116 -P 3306 -u root -p命令:use <数据库名>
mysql> use db_mis;命令:show grants for <用户名>
mysql> show grants for root;默认情况下,mysql帐号不允许从远程登陆,只能在localhost登录。
方式一:改mysql数据库的user表 登录mysql后查看所有数据库,会发现有一个mysql数据库,进入user表。 默认user表只有一条数据:host为localhost的root用户才可以登录; 可以新增一条host为%的root用户,这样其他任何地址都可以用root登录了。 !!!这种方式谁都可以连,不安全。
方式二:授权法
创建新的用户(可选); 创建一个test用户,ip为*,密码为123456 授权 授权test用户使用123456密码,从任何ip连接mysql服务器,对所有数据库和表有所有的权限。 这里的ip可以和user表里的host不一样,不一样的时候会自动在user表新增一条数据。 mysql> grant all privileges on *.* to 'test'@'%' identified by '123456' with grant option; mysql> flush privileges;可以只授权查询权限;
mysql> show grants for test; ERROR 1141 (42000): There is no such grant defined for user 'test' on host '%' mysql> grant select on *.* to 'test'@'10.20.61.55' identified by '123456' with grant option; Query OK, 0 rows affected (0.00 sec) mysql> flush privileges; Query OK, 0 rows affected (0.00 sec) mysql> show grants for test; +-----------------------------------------------------------------------------------------------------+ | Grants for test@% | +-----------------------------------------------------------------------------------------------------+ | GRANT USAGE ON *.* TO 'test'@'%' IDENTIFIED BY PASSWORD '*6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9' | +-----------------------------------------------------------------------------------------------------+ 1 row in set (0.00 sec)切换至test用户验证一下:
C:\Program Files (x86)\MySQL\MySQL Server 5.5\bin>mysql -u test -p Enter password: ****** mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | +--------------------+ 1 row in set (0.00 sec) mysql> use db_mis; ERROR 1044 (42000): Access denied for user 'test'@'%' to database 'db_mis'