1、概述
MySQL支持大型数据库,支持5000万条记录的数据仓库,32位系统表文件最大可支持4GB,64位系统支持最大的表文件为8TB。使用标准的SQL数据语言形式。
2、Linux的mysql安装
(1)检查是否已安装:rpm -qa|grep mysql
(2)卸载命令:rpm -e --nodeps mysql-libs
(3)给/tmp赋权:chmod -R 777 /tmp
(4)rpm安装:rpm -ivh MySQL-client**.rpm 、 rpm -ivh MySQL-server**.rpm
(5)查看安装版本:mysqladmin --version
(6)启停:service mysql start/stop
(7)首次登录:/usr/bin/mysqladmin -u root password ‘123111’ 、 mysql -uroot -p123123
(8)查看安装位置:ps -ef|grep mysql
3、字符集
(1)查看(缺省是latin1编码,会导致中文乱码):
mysql> show variables like ‘collation_%’;
mysql> show variables like ‘character_set_%’;
(2)修改库的编码
mysql> alter database db_name character set utf8;
(3)修改表的编码
mysql> ALTER TABLE table_name CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;
(4)在mysql中设置编码,单个设置(重启后会失效)
mysql> set character_set_connection=utf8;
mysql> set character_set_database=utf8;
mysql> set character_set_results=utf8;
mysql> set character_set_server=utf8;
(5)修改配置文件(改后重启)
[root@Hadoop48 ~]# vi /etc/my.cnf
[mysql]
default-character-set=utf8
[client]
default-character-set=utf8
[mysqld]
default-character-set=utf8
character_set_server=utf8
init_connect=‘SET NAMES utf8’
4、操作用户
(1)创建用户
mysql> create user etlu identified by ‘111111’;
(2)修改当前用户的密码
mysql> set password =password(‘123456’);
(3)修改某个用户的密码(通过user表的修改,必须用flush命令才能生效)
mysql> update mysql.user set password=password(‘123456’) where user=‘getl’;
mysql> flush privileges;
(4)修改用户名
mysql> update mysql.user set user=‘getl1’ where user=‘getl’;
mysql> flush privileges;
(5)删除用户
mysql> drop user getl1 ;
(6)查看用户信息
mysql> select host,user,password,select_priv,insert_priv,drop_priv from mysql.user;
5、权限管理
(1)授权(grant 权限1,权限2,…权限n on 数据库名称.表名称 to 用户名@用户地址 identified by ‘连接口令’;)
mysql> grant select,insert,delete,drop on etluser.* to etlu@localhost ;
mysql> grant all privileges on . to root@‘%’ identified by ‘123’;
(2)收回权限
revoke 权限1,权限2,…权限n on 数据库名称.表名称 from 用户名@用户地址 ;
(3)查看权限
查看当前用户权限:show grants;
查看某用户的全局权限:select * from user ;
查看某用户的某个表的权限:select * from tables_priv;
6、sql_mode设置
(1)查看
mysql> show variables like ‘sql_mode’;
(2)设置
set global sql_mode = ‘修改后的值’; (重启后失效)
set session sql_mode=‘修改后的值’; (会话生效)
sql_mode=ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER (配置文件,需重启后生效)
ONLY_FULL_GROUP_BY:
对于GROUP BY聚合操作,如果在SELECT中的列,没有在GROUP BY中出现,那么这个SQL是不合法的,因为列不在GROUP BY从句中
STRICT_TRANS_TABLES:
在该模式下,如果一个值不能插入到一个事务表中,则中断当前的操作,对非事务表不做限制
ERROR_FOR_DIVISION_BY_ZERO:
在INSERT或UPDATE过程中,如果数据被零除,则产生错误而非警告。如 果未给出该模式,那么数据被零除时MySQL返回NULL文章来源:https://www.toymoban.com/news/detail-640077.html
NO_AUTO_CREATE_USER:
禁止GRANT创建密码为空的用户文章来源地址https://www.toymoban.com/news/detail-640077.html
到了这里,关于Mysql之安装-字符集设置-用户及权限操作-sqlmode设置的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!