什么是mysql-js命令行?
mysql-js是MySQL Shell的组件之一,它提供了JavaScript语言的交互环境。在mysql-js命令行中,可以使用JavaScript语言对MySQL数据库进行操作和管理。MySQL Shell的另一个组件是SQL Shell,它提供了标准的SQL命令行接口。
如何启动mysql-js命令行?
启动mysql-js命令行非常简单,只需要在终端中输入“mysqlsh”命令即可。如果要连接到MySQL数据库,还需要指定连接信息,例如:
mysqlsh --uri=root@localhost:3306
其中,root是用户名,localhost是MySQL服务器的主机名或IP地址,3306是MySQL服务器的端口号。
mysql-js命令行的基本用法
mysql-js命令行提供了丰富的JavaScript函数和对象,可以用来连接数据库、查询数据、修改数据、管理用户、备份恢复等。以下是一些基本用法示例:
1.连接到MySQL数据库
var db = shell.connect("root@localhost:3306");
2.查询数据
db.query("SELECT * FROM test");
3.添加数据
db.execute("INSERT INTO test VALUES (1, 'hello')");
4.修改数据
db.execute("UPDATE test SET name='world' WHERE id=1");
5.删除数据
db.execute("DELETE FROM test WHERE id=1");
mysql-js命令行的高级用法
mysql-js命令行还提供了更多的高级用法,例如:
1.事务处理
var session = db.getSession();
session.startTransaction();
session.execute("UPDATE t SET name='new name' WHERE id=1");
session.rollback(); // 回滚
2.数据导入导出
shell.dumpInstance("instance1", "/path/to/backup/dir"); // 备份实例
shell.restoreInstance("instance1", "/path/to/backup/dir"); // 恢复实例
3.脚本执行
shell.runScript("/path/to/script.js");
4.管理用户
db.createRole("test_role"); // 创建角色
db.createUser("test_user", {password: "test_password", roles: ["test_role"]}); // 创建用户,并指定角色