首页 > 编程知识 正文

mysql数据库开启外网腾讯云,外网访问mysql数据库

时间:2023-12-24 12:11:52 阅读:321703 作者:WLEF

本文目录一览:

怎样设置才能允许外网访问MySQL

1. 允许外网访问MySQL,首先得让MySQL服务器有一个能和外网直接连接的公网的IP,就是不能是10.x.x.x , 172.16.x.y--172.31.x.y, 192.168.x.y的IP地址,

2. 然后在MySQL上执行如下语句:

grant all peivilegess on *.* to root@'%' identified by '密码';

flush privileges;

3. 打开防火墙,或配置防火墙允许3306端口通过

一般情况下,MySQL数据库服务器不允许外界直接访问,如果要访问的话,可以安装一个web页面的东西(比如phpmyadmin),通过访问页面的形式来访问数据库服务器。

本地如何连接云服务器mysql数据库

ip、端口、用户名、密码这些信息应该是云服务器的提供商给你的。或者你自己在云服务器上安装配置mysql,上传数据库或者脚本。那么和在本地配置是一样的原理。有问题可以联系tjyundingyun,很高兴为您解答

js如何连接和操作腾讯云mysql数据库

首先是登陆腾讯云,登陆之后可以领取新手礼包,如图

进入云产品-数据库-CDB for MYSQL-立即选购,选购最低配的可用礼包抵扣使用一个月,购买完成

主页-右上角产品管理-使用中的数据库,这时我们会看见一个实例,首先我们进入管理页面对实例进行一些基本的设置

实例名可以随意更改,外网地址必须开启,否则我们就不能在自己的项目中和本地访问云数据库。进入账号管理页面修改自己的root密码,然后点击右上角的登录数据库

登陆完成之后如下图

这个和本地客户端操作基本相同,我就不详细阐述了

   二、使用一个demo来说明如何操作云mysql数据库

1.在实例上上新建一个为nodejs的数据库,然后新建一个为employee的表,新建四个字段 name  sex   age   email除了年龄为int其它的全部为varchar格式

2.新建一个TimLiu的文件夹,打开cmd,cd TimLiu, 初始化项目npm init ,按照它的提示一步一步的操作即可,安装mysql模块,npm insitall mysql, 这个模块的作用主要是连接mysql数据库。

3.新建一个model.js 文件,

   var mysql = require(‘mysql’);

   var connection = mysql.createConnection({

           host:'',

           user:'root',

           password:'123abc',

           database:' nodejs',

           port:6445

          })

connection.connect();

这里的host为我们在腾讯云上开通的外地址,端口号也是在外网地址里面,注意要把外网地址写分开,用户为默认的管理员用户,密码为我们在云平台上设置的密码,数据库为我们创建的nodejs数据库。

接下来我们对数据库进行增删改查操作

/**

* 增加员工

*/function addEmployee(){

   var employeeInsertSql = 'INSERT INTO employee(name,sex,age,email) VALUES(?,?,?,?)';

   var employeeInsertSql_Params = ['Tim','男',22,'18818216454@163.com']

   connection.query(employeeInsertSql,employeeInsertSql_Params,function(err,result){

       if(err) console.log('[INSERT ERR]-',err.message);

       console.log(result);

   }) }addEmployee()

 }

/**

* 更新员工

*/

function insertEmployee(){

   var employeeUpdateSql = "UPDATE employee SET name = ? WHERE age =?";

   var employeeUpdateSql_Params = ['Peter',22];

   connection.query(employeeUpdateSql,employeeUpdateSql_Params,function(err,result){

       if(err) console.log('[UPDATE ERR]-',err.message);

       console.log(result);

   })}

insertEmployee();

/**

*查询员工

*/  function getEmployee(){

   var employeeGetSql = "SELECT * FROM employee";

   connection.query(employeeGetSql,function(err,result){

       if(err) console.log('[SELECT ERR]-',err.message);

       console.log(result);

   })}

getEmployee();

/**

*删除员工

*/  function deleteEmployee(){

   var employeeDeleteSql = "DELETE employee WHERE name = ?";

   var employeeDeleteSql_Params = 'Peter';

   connection.query(employeeDeleteSql,employeeDeleteSql_Params,function(err,result){

       if(err) console.log('[DELETE ERR]-',err.message);

       console.log(result);

   })

   }deleteEmployee();

这样我们就可以愉快的操作数据库了

如果大家想把项目更模块化操作,可在model下面新建一个employee_two.js,代码如下

var mysql = require('mysql');var connection = mysql.createConnection({

   host:'',

   user:'root',

   password:'',

   database:'nodejs',

   port:})connection.connect();/**

* 增加员工

* @param {String} employee

* @param {Function} callback

*/exports.addEmployee=function(employee,callback){

   var employeeInsertSql = 'INSERT INTO employee(name,sex,age,email) VALUES(?,?,?,?)';

   var employeeInsertSql_Params = [employee.name,employee.sex,employee.age,employee.email]

   connection.query(employeeInsertSql,employeeInsertSql_Params,callback)}/**

* 更新员工

* @param {String} employee

* @param {Function} callback

*/exports.updateEmployee = function(name,age){

   var employeeUpdateSql = "UPDATE employee SET name = ? WHERE age =?";

   var employeeUpdateSql_Params = ['Peter',22];

   connection.query(employeeUpdateSql,employeeUpdateSql_Params,function(err,result){

       if(err) console.log('[UPDATE ERR]-',err.message);

       console.log(result);

   })}/**

* 查询员工

*

*/exports.getEmployee = function(){

   var employeeGetSql = "SELECT * FROM employee";

   connection.query(employeeGetSql,callback)}/**

* 删除员工

* @param {String} name

*/exports.deleteEmployee = function(name){

   var employeeDeleteSql = "DELETE employee WHERE name = ?";

   var employeeDeleteSql_Params = 'Peter';

   connection.query(employeeDeleteSql,employeeDeleteSql_Params,callback)

   }再在根目录下新建index.js,代码如下var db = require('./model/employee_two');//增加员工var employee = {

   name:'lisa',

   age:22,

   sex:"女",

   email:'99533212@qq.com'}db.addEmployee(employee,function(err,result){

   if(err) console.log("[INSERT err]-",err.message)

   console.log(result);})//删除员工db.deleteEmployee('Peter',function(err,result){

   if(err) console.log("[DELETE err]-",err.message)

   console.log(result);})//更新员工db.updateEmployee('Tim',23,function(err,result){

   if(err) console.log("[UPDATE err]-",err.message)

   console.log(result);})//查询员工db.getEmployee(function(err,result){

   if(err) console.log("[GET err]-",err.message)

   console.log(result);})

腾讯云服务器怎么开启远程mysql服务

查看Centos版本

[root@VM_0_7_centos ~]# cat /etc/redhat-release

CentOS Linux release 7.3.1611 (Core) 12

查看当前 Ubuntu Server版本

ubuntu@VM-15-131-ubuntu:~$ sudo lsb_release -a

No LSB modules are available.

Distributor ID: Ubuntu

Description: Ubuntu 16.04.1 LTS

Release: 16.04

Codename: xenial123456

修改user表里面的host项

登入mysql后,更改 “mysql” 数据库里的 “user” 表里的 “host” 项,从”localhost”改称”%”

mysql -uroot -proot

mysqluse mysql;

mysqlupdate user set host = '%' where user = 'root';

mysqlselect host, user from user;

如何允许外网可以连接mysql数据库

设置mysql服务允许外网访问,修改mysql的配置文件,有的是my.ini,有的是my.cnf【linux】.

1:设置mysql的配置文件

/etc/mysql/my.cnf

找到 bind-address =127.0.0.1 将其注释掉;//作用是使得不再只允许本地访问;

重启mysql:/etc/init.d/mysql restart;

2:登录mysql数据库:mysql -u root -p

mysql use mysql;

查询host值:

mysql select user,host from user;

如果没有"%"这个host值,就执行下面这两句:

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

mysql flush privileges;

或者也可以执行:

mysqlgrand all privileges on *.* to root@'%' identifies by ' xxxx';

其中 第一个*表示数据库名;第二个*表示该数据库的表名;如果像上面那样 *.*的话表示所有到数据库下到所有表都允许访问;

‘%':表示允许访问到mysql的ip地址;当然你也可以配置为具体到ip名称;%表示所有ip均可以访问;

后面到‘xxxx'为root 用户的password;

举例:

任意主机以用户root和密码mypwd连接到mysql服务器

mysql GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'mypwd' WITH GRANT OPTION;

mysql flush privileges;

IP为192.168.1.102的主机以用户myuser和密码mypwd连接到mysql服务器

mysql GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'192.168.1.102' IDENTIFIED BY 'mypwd' WITH GRANT OPTION;

mysql flush privileges;

腾讯云服务器怎么搭建支持外网访问的mysql数据库

使用第三方一键php包的配置。win服务器还是linux 服务器都可以在三方面板中成功配置出可视化操作界面,然后一键部署php环境。

接下去就是这些步骤了:

1、注册域名

2、选购服务器

3、网站备案

4、搭建网站环境

5、安装网站程序

6、充实网站内容

数据库操作就是这么来的。因为这方面内容较多,留言或到博客找相关内容,老魏写过不少详细的内容,可以帮助入门。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。