• Ubuntu安装mysql


    1、安装命令

    sudo apt-get install mysql-server //服务端
    sudo apt-get install mysql-client //客户端
    sudo apt-get install libmysqlclient-dev //程序编译时链接的库

    2、检查安装

    sudo netstat -tap | grep mysql

     3、更改默认密码

    sudo cat /etc/mysql/debian.cnf

    4、登录

    mysql -u yuor-username -p

    5、修改密码

    use mysql;

    // 下一行,密码改为了yourpassword,可以设置成其他的

    update mysql.user set authentication_string=password('yourpassword') where user='root' and Host ='localhost';

    update user set plugin="mysql_native_password";

    flush privileges;

    quit;

    6、远程连接问题排查

    具体表现为:利用Navicat登录或利用Console登录时包报10060错误,Navicat测试连接超时(timeout)

    (1)判断mysql是否启动

    ps -ef|grep mysqld

    (若mysql进程不存在,启动mysql/etc/init.d/mysqld start

      (2) 检查Mysql占用的端口号和IP:

      a. 首先检查是否监听3306端口(默认端口),利用mysql -u [用户名] -p登录Mysql:

      检查账号是否配置正确

      select user,host from mysql.user;

      若不限制登录的host,此时账号后应显示%,当然,此处还应保证确实有相应权限

       grant all privileges on *.* to 'root'@'%' identified by 'root' with grant option;

      flush privileges;

      检查默认端口

      show global variables like 'port';

      (若端口发生改变,登录时应利用-P [端口号] 的方式指定端口)

    b.检查进程实际监听地址 

      netstat -nlp|grep 3306

     若显示为127.0.0.1:3306则说明mysqlbind-address设置为bind-address=127.0.0.1,可以简单理解为目前,仅服务器所在机器可以访问到这个mysq

    解决方法为:

      vi /etc/mysql/mysql.conf.d/mysqld.cnf

      注释掉(前面加个#号)  bind-address=127.0.0.1

      再重启mysql服务

        /etc/init.d/mysql restart

    (3)检查防火墙配置

      sudo ufw status

      若显示Status: inactive说明防火墙开启,此时可利用sudo ufw disable关闭防火墙(不推荐) 也可利用

      sudo allow 3306

      配置放行规则

    *用户创建与授权

    1、用户创建

    CREATE USER 'username'@'host' IDENTIFIED BY 'password';

    2、授权

    GRANT privileges ON databasename.tablename TO 'username'@'host'

    说明:

      privileges:用户的操作权限,如SELECT,INSERT,UPDATE等,如果要授予所的权限则使用ALL

      databasename:数据库名 

      tablename:表名,如果要授予该用户对所有数据库和表的相应操作权限则可用*表示,如*.*

    3、设置与更改用户密码

      SET PASSWORD FOR 'username'@'host' = PASSWORD('newpassword');

    如果是当前登陆用户用: 

      SET PASSWORD = PASSWORD("newpassword");

    4、撤销用户权限 

       REVOKE privilege ON databasename.tablename FROM 'username'@'host';

    5、删除用户

      DROP USER 'username'@'host';

    * 卸载相关操作

    sudo apt-get remove mysql-server
    sudo apt-get autoremove mysql-server
    sudo apt-get remove mysql-common (非常重要)

  • 相关阅读:
    centos6 vps部署rails
    初始设置ubuntu 16.04 Vps部署rails
    自己买的书籍
    linux mint 18.2 install erlang
    Bunder: What does :require => nil in Gemfile mean?
    javascript箭头函数
    SharpGL学习笔记(一) 平台构建与Opengl的hello World
    动力学仿真引擎ODE的学习笔记,C#演示(一)
    设计模式之 面向对象的养猪厂的故事,C#演示(二)
    设计模式之 面向对象的养猪厂的故事,C#演示(一)
  • 原文地址:https://www.cnblogs.com/appear001/p/13695332.html
Copyright © 2020-2023  润新知