Ubuntu安装Mysql并开启远程登录

    自己在工作中,需要配置Mysql,并且需要远程进行访问。 其中碰到的问题都是上网搜进行解决,但是很多人可能没有我碰到的问题多,所以将自己解决配置中的问题记录下来,以便帮助一些像我一样对mysql和ubuntu都比较无措的人。

    我的系统是:ubuntu 12.04 32位 或ubuntu 16.04

 一、安装mysql

  sudo apt-get install mysql-server mysql-client

        如果安装过程中出现什么包无法找到或者出错之类的,则使用

sudo apt-get update

        基本上安装没有什么问题。但是,如果想卸载mysql,参见http://www.cnblogs.com/steven_oyj/archive/2010/05/24/1742808.html的说明。该网友中的“

dpkg -l |grep ^rc|awk '{print $2}' |sudo xargs dpkg -P”

慎用哈。反正我没有用

 

二、配置远程登录

        1)修改配置

// 1. 编辑配置文件
// ubuntu12
$ sudo vi /etc/mysql/my.cnf
// ubuntu 16
$ sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf 


// 2. 注销掉bind-address=127.0.0.1一行,保存退出
#bind-address=127.0.0.1

// 3. 重启mysql
$ sudo /etc/init.d/mysql restart

        2)查看服务是否启动,并且可以看到监听的端口。

$ netstat -aon | grep mysql

        a.   如果有多个服务,建议kill掉多余的进程。正常情况下,出现如下的一条结果,说明mysql启动成功。

unix  2      [ ACC ]     STREAM     LISTENING     12812    /var/run/mysqld/mysqld.sock

        b.   如果你没有查看到上述相应信息,你就有必要去查看mysql的log日志文件,log文件位置在my.cnf中通过log_error字段指定。

        c.   如果你出现了多条信息,建议将其余所有的mysql进程kill掉,然后使用/etc/init.d/mysql restart重启。

        3)使用安装过程中设置的账号密码登录MySQL,执行:

mysql> use mysql

mysql>grant all privileges on *.* to 'your_username'@'%'  identified by 'your_password' with grant option;  

        解释 :*.*的前一个*代表所有数据库,后一个*代表所有数据表。

mysql> flush privileges;

mysql>quit

        4)确保3306端口对外开放

// 1. 查看防火墙状态
$ sudo ufw status

// 2. 如果防火墙打开状态进行下面设置
$ sudo iptables -A INPUT -p tcp --dport 3306 -j ACCEPT 
//或者
$ sudo ufw allow 3306/tcp

或者直接关闭防火墙

sudo ufw disable

   5)至此,自己可以进行远程访问了。

mysql -h[mysql ip] -u[your_username] -p[your_password]

    欢迎大家交流。

        

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值