mysql数据库权限及编码

CREATE DATABASE IF NOT EXISTS yourdbname DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
在tigase中,发送消息有文本的形式,比如发送emoji表情, 编码必须采用 utf8mb4 , utf8mb4 is a utf8 character set, which was added to MySQL in version 5.3.3, that fully supports unicode. utf8mb4是一种可支持4个字节UTF编码,一个字符最多能有4字节,所以能支持更多的字符集。比如可以支持emoji表情。
mysql> show create table msg_history;
+-------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Table | Create Table |
+-------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| msg_history | CREATE TABLE `msg_history` (
`msg_id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
`ts` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`expired` datetime DEFAULT NULL,
`sender_uid` bigint(20) unsigned DEFAULT NULL,
`receiver_uid` bigint(20) unsigned NOT NULL,
`msg_type` int(11) NOT NULL,
`message` text CHARACTER SET utf8mb4 NOT NULL,
UNIQUE KEY `msg_id` (`msg_id`),
KEY `expired` (`expired`),
KEY `sender_uid` (`sender_uid`,`receiver_uid`),
KEY `receiver_uid` (`receiver_uid`,`sender_uid`)
) ENGINE=InnoDB AUTO_INCREMENT=110488 DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC |
另外:
CREATE TABLE `qcloud_sms_template` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
`ctime` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY(`id`),
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
只有 mysql 5.6.5+ 才支持 DATETIME类型 所以安装 mysql 的时候 必须升级到 5.6.5 以上版本。 centos 上安装mysql:
service mysqld stop
yum remove mysql mysql-*
查看是否有残余的mysq,输入命令:
yum list installed | grep mysql
如果有,可输入命令删除:
rum remove mysql-libs
下载安装最新的rpm文件
rpm -Uvh http://repo.mysql.com/mysql-community-release-el6-5.noarch.rpm
安装MySQL,输入命令:
yum install mysql-community-server
问题:
[root@host-192-168-1-36 software]# mysql -utigase -ptigase
Warning: Using a password on the command line interface can be insecure.
ERROR 1045 (28000): Access denied for user 'tigase'@'localhost' (using password: YES)
解决方法:
1、先修改 root 密码:
用SET PASSWORD命令
mysql -u root
mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpass');
或者用UPDATE直接编辑user表
mysql -u root
mysql> use mysql;
mysql> UPDATE user SET Password = PASSWORD('newpass') WHERE user = 'root';
mysql> FLUSH PRIVILEGES;
用root 账号登录mysql, 查看mysql 数据库 中 的 user 表,是否有 tigase账号, 如果没有,则执行:
GRANT USAGE ON *.* TO 'tigase'@'localhost' IDENTIFIED BY 'tigase';
2)授权法。例如,你想wow使用mypassword从任何主机连接到mysql服务器的话。
GRANT ALL PRIVILEGES ON *.* TO 'wow'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
如果你想只允许用户wow从ip为192.168.83.56的主机连接到192.168.11.12的mysql服务器,并使用mypassword作为密码
GRANT ALL PRIVILEGES ON *.* TO 'wow'@'192.168.83.56' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
FLUSH PRIVILEGES
如果用tigase账号登录mysql 后,无法使用 tigasedb 数据库:
mysql> use tigasedb;
ERROR 1044 (42000): Access denied for user 'tigase'@'localhost' to database 'tigasedb'
查看user表:
| localhost | tigase | *04B3CD6E8CDAF8E0494A9E3076FDCDCBD155A98A | N | N | N | N | N | N | N | N | N | N
权限都是 N,
解决办法:
使用 root 账号登录mysql ,
mysql> use mysql;
mysql> GRANT ALL ON *.* TO 'tigase'@'localhost';
mysql> FLUSH PRIVILEGES;
再次查看 user表权限,已都有权限:
| tigase | *04B3CD6E8CDAF8E0494A9E3076FDCDCBD155A98A | Y | Y | Y | Y | Y | Y | Y | Y | Y
tigase可以使用 tigasedb 。
②在导入数据前执行SET UNIQUE_CHECKS=0,关闭唯一性校验,在导入结束后执行SET UNIQUE_CHECKS=1,恢复唯一性校验,可以提高导入的效率。
③如果应用使用自动提交的方式,建议在导入前执行SET AUTOCOMMIT=0,关闭自动提交,导入结束后再执行SET AUTOCOMMIT=1,打开自动提交,也可以提高导入的效率。
为了防止 使用 source 命令导入,CRT断开导致导入中止的情况,可以使用 启用后台进程导入: mysql -uroot -ppassword -Ddbname < tigase.sql &
mysql设置表名大小写不敏感:在 my.cnf [mysqld] 节点中加上: lower_case_table_names=1
tomcat日志报错:
org.springframework.transaction.CannotCreateTransactionException: Could not open JDBC Connection for transaction; nested exception is org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory, cause: Access denied for user 'root'@'host-192-168-1-36' (using password: YES)
at org.springframework.jdbc.datasource.DataSourceTransactionManager.doBegin(DataSourceTransactionManager.java:240)
查看mysql数据库的user表:

需要执行 update user set password = password('password') where user='root'; 改完后,查看mysql库的user表:

mysql数据库权限及编码的更多相关文章
- 查看MySQL数据库的默认编码
查看MySQL数据库的默认编码 1.使用status命令能够显示数据库的相关系信息,示例如下: mysql> status;————–mysql Ver 14.12 Distrib 5.0.77 ...
- MySQL数据库权限体系介绍
本文主要向大家介绍了MySQL数据库权限体系,通过具体的内容向大家展现,希望对大家学习MySQL数据库有所帮助. 一.权限体系简介: MySQL的权限体系在实现上比较简单,相关权限信息主要存储在mys ...
- MySQL数据库权限管理
# MySQL数据库权限管理 ### 前言------------------------------ 对不同的用户赋予不同级别的访问权限是个好习惯- 杜绝一些恶意用户 ### 参考资料------- ...
- vc6.0运用mysql数据库中的编码所导致的乱码问题(接收和输出的编码必须要一致)
[编译中遇见的问题] ①在用vc 6.0去调用MySQL中的数据时,出现中文乱码 ②不明白mysql中的码制 [开始解决问题] ①打开mysql控制台 ...
- MySQL数据库权限分类
一.权限表 mysql数据库中的3个权限表:user .db. host 权限表的存取过程是: 1)先从user表中的host. user. password这3个字段中判断连接的IP.用户名.密码是 ...
- mysql数据库修改字符编码问题
遇到这种情况,现有项目的数据库已经建好,数据表也已经创建完成. 问题来的,数据库不能插入中文,调试时候发现中文数据从发送请求到最后请求处理完成这些步骤,中文还没有发生乱码. 只有在存储到数据库后查询数 ...
- 前端页面汉子显示为问号,需修改 linux下面修改mysql 数据库的字符编码为utf8
设置MySQL数据库编码为UTF-8 登陆后查看数据库当前编码:SHOW VARIABLES LIKE 'char%'; 修改/etc/mysql/my.cnf (默认安装路径下) (标签下没有的添加 ...
- Windows连接Linux服务器中MySQL数据库-权限配置
问题描述 在Windows系统中安装了监控MySQL数据库服务器性能的工具Spotlight on MySQL,利用Spotlight连接Linux服务器中的MySQL,进行相关配置如下: 点击& ...
- Mysql数据库乱码与编码问题筛查
最近接连遇到数据库编码问题,让你的系统本来像个美丽的姑娘却忽然发现她不识字一样难受,其实很多时候是编码的问题,而mysql(特别地)设计编码的地方很多,在这里做一个筛查: 1 mysql编码 用下面的 ...
随机推荐
- 扩展Bootstrap Tooltip插件使其可交互
最近在公司某项目开发中遇见一特殊需求,请笔者帮助,因此有了本文的插件.在前端开发中tooltip是一个极其常用的插件,它能更好向使用者展示更多的文档等帮助信息.它们通常都是一些静态文本信息.但同事他们 ...
- 《HiWind企业快速开发框架实战》(3)使用HiWind创建和管理菜单
<HiWind企业快速开发框架实战>(3)使用HiWind创建和管理菜单 关于HiWind HiWind企业快速开发框架,是基于.NET+EasyUi(支持各种前端扩展,后面将扩展Boot ...
- Java多线程系列--“JUC锁”10之 CyclicBarrier原理和示例
概要 本章介绍JUC包中的CyclicBarrier锁.内容包括:CyclicBarrier简介CyclicBarrier数据结构CyclicBarrier源码分析(基于JDK1.7.0_40)Cyc ...
- Linux sudo
200 ? "200px" : this.width)!important;} --> 介绍 本篇文章主要介绍sudo配置和用法,为了给某个用户控制权限比如执行某个命令或者关 ...
- Vivado SDK 2014.2 创建新工程后,BSP版本不对的解决办法
问题描述如下: 1. 使用Vivado SDK 2014.2已经创建了工程,但是此时,hdf文件增加了外设,需要重新创建工程以更新SDK中的外设描述: 2. 使用新的hdf创建工程后,发现system ...
- [oracle]逗号(或分号等)间隔的列,按这一列劈分后转多行
今天遇到个需求,要匹配两个表, 但是关联的字段,在另一个表中是放在一个字段中用分号分割的 怎么全部匹配呢? 后来在网上搜到了, 记录下 SELECT cp.ES_EXTNUMBER, cp.ES_AG ...
- Report processing of Microsoft Dynamic AX
Report processing of Microsoft Dynamic AX 版权声明:本文为博主原创文章,未经博主允许不得转载. The implementation of a general ...
- 在drawable 画胶囊状
<solid android:color="@color/colorAccent"></solid> <corners android:radius= ...
- java中集合类中Collection接口中的Map接口的常用方法熟悉
1:Map接口提供了将键映射到值的对象.一个映射不能包含重复的键:每个键最多只能映射到一个值.Map接口中同样提供了集合的常用方法. 2:由于Map集合中的元素是通过key,value,进行存储的,要 ...
- Tornado框架中视图模板Template的使用
上文的程序中有这样一段: class MessageHandler(tornado.web.RequestHandler): def get(self): self.write(''' <htm ...