#阿里云#云服务器开放数据库本地连接
前言
开发一个项目时,最终项目和数据库都要迁移到服务器上,但服务器上新建的数据库是没有数据的。但是当团队合作开发的时候,如果每一个人都各自使用一个数据库,最终进行数据合并是不现实的,无法实现数据统一。采用一个远端数据库,可以保证多人开发,共享一个数据库,实现数据统一。
阿里云服务器ECS:Ubuntu 16.04 64位
安装MySQL
Ubuntu上安装MySQL的过程很简单,执行以下三条命令即可:
sudo apt install mysql-server
sudo apt install mysql-client
sudo apt install libmysqlclient-dev
安装的过程中会有一次输入root密码的步骤,记住这个密码。安装成功后,查看MySQL的版本:mysql --version。简单使用MySQL服务的一些常用命令:
sudo service mysql start //开启服务
sudo service mysql stop //停止服务
sudo service mysql restart //重启服务
sudo mysql -u 用户名 -p //登录msql
共享云数据库
1.修改MySQL配置文件
vim编辑文件:sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf
找到 bind-address 那一行,初始值被赋为 127.0.0.1,代表只在本机可用,将其改为 0.0.0.0,代表全IP可用。
保存退出。
2.添加MySQL用户
初始时MySQL只有一个客户,那就是root。root默认是不对外开放的,我们不轻易改变它,所以为MySQL创建一个新的用户:
sudo mysql -u root -p
use mysql;
GRANT ALL PRIVILEGES ON *.* TO 用户名@'%' IDENTIFIED BY '密码' WITH GRANT OPTION;
flush privileges;
quit;
重启MySQL服务,命令为:sudo service mysql restart。
3.云服务器设置安全组规则
进入ECS管理页面,左边可以看到“本实例安全组”选项,点击进入->“配置规则”->“添加安全组规则”
需要填写的只有两项,端口范围:3306/3306;授权对象:0.0.0.0/0。
到此为止,任何IP都可以访问你的数据库了。
测试登录远程数据库
本地命令行测试:mysql -u 用户名 -h 服务器IP -P 3306 -p密码。注意用户名和密码指的是新建的用户,登录上数据库表示开放服务器数据库成功。
Django项目中修改setting.py中配置数据库:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'mysql',
'USER': '用户名',
'PASSWORD': '密码',
'HOST': '云服务器IP',
'PORT': '3306',
}
}
配置好之后,通过python manage.py migrate将django模型应用到数据库。
本文版权归作者AlvinZH和博客园所有,欢迎转载和商用,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利.