您的位置:首页 > 数据库 > MySQL

Ubuntu简单安装mysql 并配置远程连接

2015-09-16 13:06 846 查看
本地经常做一些小试验,搭建一个简单环境的过程,纪录之

一、环境

vmware11虚拟机
系统镜像:ubuntu-14.10-server-amd64.iso

1. sudo apt-get install mysql-server //mysql核心程序,生成管理数据库实例,数据库实例任务调度线程之类,并提供相关接口供不同客户端调用
2. sudo apt-get install mysql-client //操作数据库实例的工具。操作mysql实例的客户端有很多,mysql-client只是其中一种,包括mysql,mysqldump,mysqlslap,这些访问,备份,压力测试的工具
3. sudo apt-get install libmysqlclient-dev //mysql 依赖库

遇到问题:

安装的时候apt-get 如果提示E: Invalid operation install 之类的错误

执行apt-get update //update 是同步 /etc/apt/sources.list 和 /etc/apt/sources.list.d 中列出的源的索引,这样才能获取到最新的软件包。

执行apt-get upgrade //upgrade 是升级已安装的所有软件包,升级之后的版本就是本地索引里的,因此,在执行 upgrade 之前一定要执行 update, 这样才能是最新的。

二、确定安装成功:

1、监听端口(我使用默认3306)
netstat -tln





2、客户端连接
mysql -u root -p





三、开启远程连接

mysql 3306端口默认是绑定本机127.0.0.1的,需要修改配置文件
vim /etc/mysql/my.cnf
1、注释掉bind-address = 127.0.0.1 或者改为bind-address = 0.0.0.0
2、重启sudo /etc/init.d/mysql restart
3、授权用户访问(以root用户为例)授权法改表法任选其一:
3-1、 授权法

授权格式:grant 权限 on 数据库.* to 用户名@登录主机 identified by "密码";
grant all privileges on *.* to root@"%" identified by "password" with grant option;
刷新权限,马上生效
flush privileges;
3-2、改表法:
mysql -u root -p123
mysql>use mysql;
mysql>update user set host = '%' where user = 'root';
注:执行update时候会遇到duplicate错误,是因为一个root用户有好几个Host,这句update语句根据具体情况修改如 where Host='127.0.0.1'等等





mysql>select host, user from user; //查看执行结果

四、远程连接

如果防火墙开启,是访问不了的,我没有配置防火墙,直接简单粗暴的ufw disable

简单的ufw命令:
1 启用
sudo ufw enable
sudo ufw default deny
作用:开启了防火墙并随系统启动同时关闭所有外部对本机的访问(本机访问外部正常)。
2 关闭
sudo ufw disable
3 查看防火墙状态
sudo ufw status

五、新增用户admin并授所有权限

mysql> insert into mysql.user(Host,User,Password) values("%","admin",password("admin"));
mysql> grant all privileges on *.* to admin@"%" identified by "admin" with grant option;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: