IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    [原]CentOS下安装MySQL,Windows下使用Navicat for MySql连接

    testcs_dn发表于 2014-06-16 19:42:57
    love 0

    安装

    查看有没有安装过:
              yum list installed mysql*
              rpm -qa | grep mysql*
     
    查看有没有安装包:
              yum list mysql*
     
    安装mysql客户端:
              yum install mysql
     
    安装mysql 服务器端:
              yum install mysql-server
              yum install mysql-devel

    启动&&停止

    数据库字符集设置

              mysql配置文件/etc/my.cnf中的[mysqld]配置节中加入default-character-set=utf8

    有时候配置文件可能在/usr/my.cnf中,如果还是找不到,使用以下命令查找:

    find -name my.cnf

     方法:vi /etc/my.cnf,通过上下左右键移动光标,按字母“i”进入编辑状态,Shift + Insert 粘贴内容(我是通过Xshell操作的),按ESC键进入命令模式,输入“:wq”按回车键。


    启动mysql服务:
              service mysqld start或者/etc/init.d/mysqld start
    开机启动:
              chkconfig -add mysqld,查看开机启动设置是否成功chkconfig --list | grep mysql*
     
              mysqld             0:关闭    1:关闭    2:启用    3:启用    4:启用    5:启用    6:关闭
    停止:
              service mysqld stop

    登录

    创建root管理员:
              mysqladmin -u root password 123456
    这个没有执行通过,提示:mysqladmin: Can't turn off logging; error: 'Access denied; you need the SUPER privilege for this operation'
    登录:
              mysql -u root -p输入密码即可。
    忘记密码:
              service mysqld stop
     
              mysqld_safe --user=root --skip-grant-tables

    执行这条语句之后就不能再输入命令了,

    输出:140616 19:23:09 mysqld_safe Logging to '/var/log/mysqld.log'.
    140616 19:23:09 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql

    之后就停在那里不动,需要再开终端执行命令;
     
              mysql -u root
     
              use mysql;
     
              update user set password=password(’123456‘) where user=’root‘;
     
              flush privileges;  
      但是执行完这些命令没能解决Windows下使用Navicat for MySql连接不上的问题;

    远程访问

    开放防火墙的端口号,或关闭防火墙;
    mysql增加权限:mysql库中的user表新增一条记录host为“%”,user为“root”。

    这个测试也不管用;

    Linux MySQL的几个重要目录

    数据库目录
             /var/lib/mysql/
    配置文件
             /usr/share /mysql(mysql.server命令及配置文件)
    相关命令
             /usr/bin(mysqladmin mysqldump等命令)
    启动脚本
             /etc/rc.d/init.d/(启动脚本文件mysql的目录)

    Windows下使用Navicat for MySql连接



    具体请参考:MySQL学习(二)图形界面管理工具Navicat for MySQL安装和使用

    你可能遇到防火墙原因而出现以下错误:

    请参考:连接MySQL错误:Can't connect to MySQL server (10060)


    错误:1130 host is not allowed to connect to this mysql server

    解决方法:

    1。 改表法。

    可能是你的帐号不允许从远程登陆,只能在localhost。这个时候只要在localhost的那台电脑,登入mysql后,更改 "mysql" 数据库里的 "user" 表里的 "host" 项,从"localhost"改称"%"

    mysql -u root -pvmwaremysql>use mysql;

    mysql>update user set host = '%' where user = 'root';

    mysql>select host, user from user;

    2. 授权法。

    例如,你想myuser使用mypassword从任何主机连接到mysql服务器的话。

    GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;

    FLUSH   PRIVILEGES;

    这个测试通过,不过记得修改语句中的“myuser”和“mypassword”,我就是拿过来直接就执行了,结果搞了半天才发现。

    如果你想允许用户myuser从ip为192.168.1.6的主机连接到mysql服务器,并使用mypassword作为密码

    GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'192.168.1.3' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;

    FLUSH   PRIVILEGES;

    如果你想允许用户myuser从ip为192.168.1.6的主机连接到mysql服务器的dk数据库,并使用mypassword作为密码

    GRANT ALL PRIVILEGES ON dk.* TO 'myuser'@'192.168.1.3' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;

    FLUSH   PRIVILEGES;

    在安装mysql的机器上运行:

    1、d:\mysql\bin\>mysql   -h   localhost   -u   root //这样应该可以进入MySQL服务器

    2、mysql>GRANT   ALL   PRIVILEGES   ON   *.*   TO   'root'@'%'   WITH   GRANT   OPTION //赋予任何主机访问数据的权限

    3、mysql>FLUSH   PRIVILEGES //修改生效

    4、mysql>EXIT //退出MySQL服务器

    这样就可以在其它任何的主机上以root身份登录啦!



沪ICP备19023445号-2号
友情链接