Mysql高级

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介: Mysql高级

Centos7 安装mysql

MySQL官网下载地址

http://dev.mysql.com/downloads/mysql/

Mysql安装

(1)# rpm -qa | grep mariadb

卸载mariadb

(2)   # rpm -e --nodeps mariadb-libs

将下载的安装包拷贝到centos中解压

(3)   # tar -xf mysql-5.7.28-1.el6.x86_64.rpm-bundle.tar

在安装目录下执行rpm安装

# rpm -ivh mysql-community-common-5.7.28-1.el6.x86_64.rpm

# rpm -ivh mysql-community-libs-5.7.28-1.el6.x86_64.rpm

# rpm -ivh mysql-community-client-5.7.28-1.el6.x86_64.rpm

# rpm -ivh mysql-community-server-5.7.28-1.el6.x86_64.rpm

可能遇到的其他依赖和问题

# yum install net-tools -y

# yum install perl -y

安装server可能遇到 检查签名

解决办法

# rpm -ivh mysql-community-server-5.7.28-1.el6.x86_64.rpm --force --nodeps

修改/etc/my.cnf文件,在[mysqld]节点下添加如下配置

[mysqld]

explicit_defaults_for_timestamp=true //显示指定默认值为timestamp类型的字段

查看datadir的值:

[mysqld]

datadir=/var/lib/mysql

初始化数据库

# mysqld --initialize --user=mysql

查看生成的临时密码

# cat /var/log/mysqld.log

启动mysql服务

# service mysqld start

登录mysql

# mysql -uroot -p     (输入临时密码)

修改root用户密码

mysql> set password = password("000000");

查看字符编码

showvariableslike"%char%";

永久修改字符编码

[client]

default-character-set=utf8

[mysql]

default-character-set=utf8

[mysqld]

character_set_server=utf8

collation-server=utf8_general_ci

修改已有库和表的编码

mysql>alterdatabase test characterset'utf8';

Query OK,1row affected (0.01 sec)

mysql>altertable testconvert tocharacterset'utf8';

Query OK,1row affected (0.09 sec)

Records:1 Duplicates:0Warnings:0

MySQL的用户管理

(1)MySQL的用户管理在 mysql库中的user表中

  需要了解的列: Host,User, authentication_string等, 可通过 desc user 查看user表结构

(1)相关命令

命令 描述 备注
create user zhang3 identified by '123123'; 创建名称为zhang3的用户,密码设为123123;
select host,user,password,select_priv,insert_priv,drop_priv from mysql.user; 查看用户和权限的相关信息
set password =password('123456') 修改当前用户的密码
update mysql.user set authentication_string=password('123456') where user='li4'; 修改其他用户的密码 注意:mysql 5.7 通过authentication_string表示密码列 所有通过user表的修改,必须用flush privileges;命令才能生效
update mysql.user set user='li4' where user='wang5'; 修改用户名 所有通过user表的修改,必须用flush privileges;命令才能生效
drop user li4 删除用户 不要通过delete from user u where user='li4' 进行删除,系统会有残留信息保留。

修改用户密码

update mysql.user set authentication_string=password('123456') where user='li4';

注意:所有通过user表的修改,必须用flush privileges;命令才能生效

远程工具访问

当前root用户对应的host值为localhost,意味着只允许本机连接

mysql> update user set host='%' where user = 'root';

需要将host的值修改为%,表示允许所有远程通过 TCP方式的连接

MYSQL的权限管理

授予权限

命令 描述
grant 权限1,权限2,…权限n on 数据库名称.表名称 to 用户名@用户地址 identified by ‘连接口令’ 该权限如果发现没有该用户,则会直接新建一个用户。 示例: grant select,insert,delete,drop on atguigudb.* to li4@localhost ; 给li4用户用本地命令行方式下,授予atguigudb这个库下的所有表的插删改查的权限。
grant all privileges on . to joe@'%' identified by '123'; 授予通过网络方式登录的的joe用户 ,对所有库所有表的全部权限,密码设为123.

收回权限

命令 描述 备注
show grants 查看当前用户权限
revoke [权限1,权限2,…权限n] on 库名.表名 from 用户名@用户地址 ; 收回权限命令
REVOKE ALL PRIVILEGES ON mysql.* FROM joe@localhost; 收回全库全表的所有权限
REVOKE select,insert,update,delete ON mysql.* FROM joe@localhost; 收回mysql库下的所有表的插删改查权限

提示:权限收回后,必须用户重新登录后,才能生效。


相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
3月前
|
存储 SQL 关系型数据库
二、MySQL高级分享2
二、MySQL高级分享2
36 0
|
6月前
|
存储 关系型数据库 MySQL
MySQL基础详讲(高级部分)
MySQL是一种关系型数据库管理系统(RDBMS),它是一种开源数据库软件,广泛用于Web应用程序的开发和数据存储
67 3
|
6月前
|
关系型数据库 MySQL Java
MySQL高级【约束】第七章(上)
MySQL高级【约束】第七章
|
6月前
|
存储 SQL 关系型数据库
【MYSQL高级】数据生成与插入脚本编写与使用
【MYSQL高级】数据生成与插入脚本编写与使用
96 1
|
6月前
|
SQL 监控 关系型数据库
【MYSQL高级】Mysql找出执行慢的SQL【慢查询日志使用与分析】
【MYSQL高级】Mysql找出执行慢的SQL【慢查询日志使用与分析】
456 0
|
3月前
|
关系型数据库 MySQL 数据库
深入理解MySQL:从基础到高级数据库管理
深入理解MySQL:从基础到高级数据库管理
110 0
|
6月前
|
搜索推荐 算法 关系型数据库
【MYSQL高级】Mysql查询语句优化方法
【MYSQL高级】Mysql查询语句优化方法
42 1
|
2月前
|
SQL 关系型数据库 MySQL
Java中的MySQL高级使用手册:解锁数据库之道
Java中的MySQL高级使用手册:解锁数据库之道
49 1
|
3月前
|
存储 关系型数据库 MySQL
三、MySQL高级分享-分页
三、MySQL高级分享-分页
34 0
|
4月前
|
存储 SQL 关系型数据库
Mysql高级完整版
Mysql高级完整版
52 0