如何为校园门户网站实施伪静态以提升访问速度和用户体验?
摘要:校园门户网站建设,网站做伪静态,南京装修公司做网站,庆阳网站优化公司全球化和本地化 关于MySQL处理不同字符集和语言 字符集和校对顺序 数据库被用来存储和检索数据,不同的语言和字符集需要以不同的方式存储和检索
校园门户网站建设,网站做伪静态,南京装修公司做网站,庆阳网站优化公司全球化和本地化
关于MySQL处理不同字符集和语言
字符集和校对顺序
数据库被用来存储和检索数据#xff0c;不同的语言和字符集需要以不同的方式存储和检索#xff0c;因此#xff0c;MySQL需要适应不同的字符集#xff0c;适应不同的排序方式
一些术语#xff1a; 字符…全球化和本地化
关于MySQL处理不同字符集和语言
字符集和校对顺序
数据库被用来存储和检索数据不同的语言和字符集需要以不同的方式存储和检索因此MySQL需要适应不同的字符集适应不同的排序方式
一些术语 字符集字母和富豪的集合 编码某某个字符成员的内部表示 校对规定字符如何比较的指令
使用字符集和校对顺序
查看MySQL所支持的字符集完整列表
SHOW CHARACTER SET;查看所支持校对的完整列表
SHOW COLLATION;确认系统使用的字符集和校对
SHOW VARIABLES LIKE character%;
SHOW VARIABLES LIKE collation%;一般情况下不同的表甚至不同的列都可能需要不同的字符集可以在创建表的时候指定
CREATE TABLE table_name
(col_name_1 type,col_name_2 type CHARACTER SET character_name COLLATE collate_name
)DEFAULT CHARACTER SET character_nameCOLLATE collate_name;MySQL决定字符集和校对的方式
如果指定CHARACTER SET和COLLATE两者则使用这些值如果只指定CHARACTER SET则使用词字符集以及其对应的默认校对如果两者都不指定则使用数据库默认的字符集和校对
校对在对用ORDER BY子句检索出来的数据排序时起到重要的作用如是否考虑大小写如果需要用与常见表示不同的校对顺序排序特定的SELECT语句可以在语句自身中设置
SELECT * FROM table_nmae
ORDER BY COL_1,COL_2 COLLATE collate_nameCOLLATE还可以使用于GROUP BY/HAVING/聚集函数/别名
安全管理
关于访问控制和用户管理
访问控制
MySQL服务器的安全基础是用户应该对他们需要的数据具有合适的访问权管理访问控制需要创建和管理用户账号root账号对整个MySQL数据库具有完全控制在日常的MySQL操作中不应该使用它
管理用户 MySQL用户账号和信息存储在名为mysql的MySQL数据库中当需要获取所有用户账号列表时可以使用以下代码 USE mysql;
SELECT user FROM user;创建用户账号 CREATE USER user_name IDENTIFIED BY password;INENTIFIED BY指定的口令为纯文本 重命名一个用户账号 RENAME USEER user_name TO new_name;删除用户帐号 DROP USER user_name;删除用户账号及其相关权限 查看用户访问权限 SHOW GRANTS FOR user_name;授予用户权限 GRANT option ON table_name.col_name TO user_name撤销权限 REVOKE option ON table_nmae.col_name FROM user_name可以被操作的权限 权限说明ALL除了GRANT OPTION以外所有权限ALTERCREATEDELETEDROPEXECUTE使用CALL和存储过程FILE使用SELECT INTO OUTFILE和LOAD DATA INFILEGRANT OPTIONINDEXINSERTLOCK TABLESPROCESSRELOADREPLICATIONSELECTSHOWSHUTDOWNSUPERUPDATEUSAGE无访问权限授权时用户必须先存在但是被授权的对象可以不存在这样的副作用是当某个数据库或表被删除时相关的权限仍然存在如果未来再次创建这些数据库和表这些权限仍然起作用 更改口令
SET PASSWORD FOR user_name Password(PASSWORD)-- 更新当前登录用户的口令
SET PASSWORD Password(password)数据库的维护
备份数据
MySQL数据库时基于磁盘的文件普通的备份系统和例程就能备份MySQL的数据但是由于这些文件总是处于打开和使用的状态普通的文件副本备份不一定总是有效
几种解决方案
使用命令函实用程序mysqldump转储所有数据库内容到某个外部文件可用命令行实用程序mysqlhotcopy从一个数据库复制所有数据使用BACKUP TABLE 或· SELECT INTO OUTFILE转储所有数据到某个外部文件
为了保证所有数据都被写到磁盘包括索引数据可能需要在进行备份前使用 FLUSH TABLES 语句
进行数据库维护
ANALYZE TABLE用来检查表健是否正确 CHECK TABLE用来针对许多问题对表进行检查
诊断启动问题
服务器启动问题通常在对MySQL配置或服务器本身进行更改时出现 MySQL在这个问题发生时报告错误但由于多数MySQL服务器是作为系统进程或服务自启动的这个消息可能看不到 在排除系统启动问题时首先应该尽量手动启动服务器 MySQL服务器自身通过在命令杭商执行mysqld启动 几个重要的mysqld命令行选项
--help显示帮助--safe-mode装在减去某些最佳配置的服务器--verbose显示全文本消息--version显示版本信息然后退出
查看日志文件
MySQL维护管理员依赖的一系列日志文件 主要日志文件有以下几种
错误日志查询日志二进制日志缓慢查询日志
改善性能
在诊断应用的滞缓现象和性能问题时性能不良的数据库通常是最常见的祸因 性能优化讨论和分析的出发点
硬件建议专用服务器调整内存分配、缓冲区大小多线程编写SELECT语句的方式使用存储过程正确的数据类型检索用于数据DELAYED关键字开启和关闭自动提交索引or 和 unionlike 和 fulltext每条规则都会在某些情况下被打破
