1. 本际云推荐 - 专业推荐VPS、服务器,IDC点评首页
  2. 云主机运维
  3. VPS运维

Tidb日常运维操作

小本本的Tidb日常运维操作

作为一名云服务器推荐网的小编,我在Tidb运维方面积累了一些经验。以下是一些Tidb日常运维操作,希望对需要进行Tidb运维的朋友有所帮助。

Tidb日常运维操作

一、集群操作

启动集群:ansible-playbook start.yml(-tags=tidb/tikv/pd标记tags可选)

关闭集群:ansible-playbook stop.yml(-tags=tidb/tikv/pd标记tags可选)

停止单个tidb-server/tikv-server:ansible-playbook stop.yml –tags=tidb/tikv/pd -l IP(IP为inventory.ini配置的IP或别名)

清除集群数据:ansible-playbook unsafe_cleanup_data.yml

销毁集群:ansible-playbook unsafe_cleanup.yml

修改集群参数:可以通过修改tidb-ansible/conf/tidb.yml配置文件,然后执行ansible-playbook rolling_update.yml(–tags=tidb/tikv tags可选),也可以直接登录服务器,找到deploy_dir/conf/tidb.toml,直接编辑文件,然后pkill tidb-server来重启服务。

二、数据库操作和TIDB权限管理

2.1 数据库操作

Tidb日常操作跟MySQL非常相似。以下是一些简单的操作:

  • 查看tidb版本信息:select tidb_version();
  • 查看安装的tidb下MySQL的数据库版本信息:show databases;
  • 查看指定用户权限:show grants for max;

2.2 权限操作

授予xxx用户对数据库mydb的读权限:GRANT SELECT ON mydb.* TO xxx@%;

为xxx用户授予所有数据库、全部权限:GRANT ALL PRIVILEGES ON *.* TO xxx@%;

收回权限使用revoke操作,与grant对应(Tidb下revoke操作只匹配精确权限,而grant可使用模糊授权)。

角色

角色是一系列权限的集合。用户可以创建角色、删除角色、将权限赋予角色;也可以将角色授予给其他用户,被授予的用户在启用角色后,可以得到角色所包含的权限。

  • 创建角色:CREATE ROLE r_1 and r_2;
  • 删除角色:DROP ROLE r_1 and r_2;
  • 授予用户角色:grant r_1 to max@%;

三、日程运维中容易遇到的问题

3.1 GClifetime问题

执行一个长事务,还没读到想要的数据,就被清理了,应用就要跳出来了,可以根据应用修改gc时间长度。

3.2 Tidb内存溢出问题

Tidb可通过在配置文件中写oom-action=”log”来捕获内存溢出的SQL语句,超过内存阈值(tidb_mem_quota_query控制)的SQL语句会被捕获到。

3.3 收集统计信息,提升数据查询效率问题

修改参数可以提升scan效率。Tidb依然使用analyze来收集表的统计信息。

set @@tidb_build_stats_concurrency=20;

set @@tidb_distsql_scan_concurrency=100;

set @@tidb_index_serial_scan_concurrency=20;

以上就是我总结的Tidb日常运维操作,希望对大家有所帮助。

原创文章,作者:小编小本本,如若转载,请注明出处:https://www.benjiyun.com/yunzhujiyunwei/vps-yunwei/5921.html