• [修]开启MySQL远程访问权限 允许远程连接


    原文地址: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可以不用加空格,其它也一样)

     端口一般默认是3306
    这里我们可以有更多的设置,具体要看/etc/mysql/my.cnf 的设置了。
     
    这里还有一个简单的例子:mysql -u lzpddd -pmypassword -h 192.168.1.88 -P 3306 -D mydb
     
    此前,有写过关于怎么操作mysql数据库的文章,还可以回忆一下。
     还有这一篇博客,
  • 相关阅读:
    c语言通过89C51驱动1602液晶显示(入门级别)
    Top k问题的讨论(三种方法的java实现及适用范围)
    单链表是否有环的问题解决与讨论(java实现)
    有效二叉查找树判断(java实现)
    字典序全排列(java实现)
    Java LRU的实现
    Windows 系统中目录 (Directory) 与文件夹 (Folder) 的区别
    Linux 版 SecureCRT 界面变为 Windows 2000 风格的解决办法
    也谈如何获取真实正确的 Windows 系统版本号
    64 位 Windows 平台开发要点之文件系统重定向
  • 原文地址:https://www.cnblogs.com/spaceship9/p/3471105.html
Copyright © 2020-2023  润新知