原文地址:http://www.cnblogs.com/XL-Liang/archive/2012/05/03/2481310.html
这个地址也许更有帮助:http://www.cppblog.com/zzg/archive/2009/05/29/86066.html (这里有很多关于数据库处理的技巧)
这么做,是新建了一个虚拟机,把数据库服务器放在虚拟机里面跑,然后通过虚拟机配置端口映射。一个电脑母机里面有很多子机的服务。这样有助于模拟与演示。
1、登陆mysql数据库
mysql -u root -p
查看user表
mysql> use mysql;
Database changed
mysql> select host,user,password from user;
+--------------+------+-------------------------------------------+
| host | user | password |
+--------------+------+-------------------------------------------+
| localhost | root | *A731AEBFB621E354CD41BAF207D884A609E81F5E |
| 192.168.1.1 | root | *A731AEBFB621E354CD41BAF207D884A609E81F5E |
+--------------+------+-------------------------------------------+
2 rows in set (0.00 sec)
可以看到在user表中已创建的root用户。host字段表示登录的主机,其值可以用IP,也可用主机名,
(1)有时想用本地IP登录,那么可以将以上的Host值改为自己的Ip即可。
2、实现远程连接(授权法)
将host字段的值改为%就表示在任何客户端机器上能以root用户登录到mysql服务器,建议在开发时设为%。
update user set host = ’%’ where user = ’root’;
将权限改为ALL PRIVILEGES
mysql> use mysql;
Database changed
mysql> grant all privileges on *.* to root@'%' identified by "root";
Query OK, 0 rows affected (0.00 sec)mysql> select host,user,password from user;
+--------------+------+-------------------------------------------+
| host | user | password |
+--------------+------+-------------------------------------------+
| localhost | root | *A731AEBFB621E354CD41BAF207D884A609E81F5E |
| 192.168.1.1 | root | *A731AEBFB621E354CD41BAF207D884A609E81F5E |
| % | root | *A731AEBFB621E354CD41BAF207D884A609E81F5E |
+--------------+------+-------------------------------------------+
3 rows in set (0.00 sec)
这样机器就可以以用户名root密码root远程访问该机器上的MySql.
3、实现远程连接(改表法)
use mysql;
update user set host = '%' where user = 'root';
这样在远端就可以通过root用户访问Mysql.
##########################
别忘了,还要这么做,原文作者没写,现在补充上
sudo vi /etc/mysql/my.cnf
注释掉这句。注释掉的意思是不必叫mysqld 服务只能被本地呼唤,可以被链接到世界的网络上,这对源代码还有数据之间不在同一主机上比较有意义。
bind-address =127.0.0.1
######################
做完以后,要重新启动mysql服务
$~ sudo service mysql restart
14:例2:连接到远程主机上的MYSQL
假设远程主机的IP为:110.110.110.110,用户名为root,密码为abcd123。则键入以下命令:
mysql -h110.110.110.110 -uroot -pabcd123 // 远程登录
-h 远程数据库地址
-u 用户名
-p 密码
(注:u与root可以不用加空格,其它也一样)
端口一般默认是3306Top k问题的讨论(三种方法的java实现及适用范围)
单链表是否有环的问题解决与讨论(java实现)
有效二叉查找树判断(java实现)
字典序全排列(java实现)
Java LRU的实现
Windows 系统中目录 (Directory) 与文件夹 (Folder) 的区别
Linux 版 SecureCRT 界面变为 Windows 2000 风格的解决办法
也谈如何获取真实正确的 Windows 系统版本号
64 位 Windows 平台开发要点之文件系统重定向