腾讯云 mysql 腾讯云虚拟主机
tencentDB for mysql属于云服务哪一层次
属于亚马逊的云数据库服务。
云数据库 MySQL(TencentDB for MySQL)是腾讯云基于开源数据库 MySQL专业打造的高性能分布式数据存储服务,让用户能够在云中更轻松地设置、操作和扩展关系数据库。
云数据库 MySQL主要特点如下:
云存储服务,是腾讯云平台提供的面向互联网应用的数据存储服务。
完全兼容 MySQL协议,适用于面向表结构的场景;适用 MySQL的地方都可以使用云数据库。
提供高性能、高可靠、易用、便捷的 MySQL集群服务。
整合了备份、扩容、迁移等功能,同时提供新一代数据库工具DMC,用户可以方便的进行数据库的管理。
腾讯云centos7安装mysql5.7,并开启3306端口
腾讯云CentOS7环境下安装MySQL5.7并开启3306端口的步骤如下:
首先,配置yum源。由于腾讯云已经内置yum,无需详细描述安装过程。直接访问/dev.mysql.com/downloads/repo/>,找到适合的MySQL RPM包。
安装MySQL源:
1.下载并安装MySQL包,例如:
sudo yum install mysql57-server
检查安装是否成功,可以通过以下命令:
sudo systemctl status mysql
如果状态显示为active,说明安装成功。
然后,使用yum安装MySQL:
sudo yum install mysql-server
启动MySQL服务,并设置开机自启动:
sudo systemctl start mysql
sudo systemctl enable mysql
安装完成后,为了安全,建议修改root用户本地密码。初始密码可以在/var/log/mysqld.log中找到,修改密码命令如下:
sudo mysql-u root-p
接下来,检查3306端口的占用情况,如果被127.0.0.1占用,需要修改my.cnf文件,注释掉bind-address= 127.0.0.1:
sudo vi/etc/my.cnf
保存并退出后,重启MySQL服务以应用更改:
sudo systemctl restart mysql
这样,MySQL 5.7的3306端口就已开启,其他电脑可以连接进行操作了。记得确保新密码符合MySQL 5.7的密码策略,包含大小写字母、数字和特殊字符,且长度不少于8位。
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);})