安装及关闭:
1、创建用户,并添加用户组
groupadd mysql 创建用户组;
useradd -g mysql mysql -s /sbin/nologin 添加Mysql用户到mysql用户组;
2、数据库安装
1)、创建basedir,该目录是放置mysql代码的目录,然后将mysql代码解压到该目录下;
2)、创建datadir,该目录是放置mysql数据的目录;
3)、这两个目录在mysql配置文件内需要使用到,需要将这两个目录权限及用户组改为mysql;
3、改配置文件,mysql有很多配置项,这里不专门介绍;
4、启动mysql
cd /usr/local/mysql/bin/
./mysqld_safe --defaults-file=/etc/my.cnf &
数据库启动后,初始密码在 /data/mysql/error.log |grep password内,需要使用初始密码更改
5、创建密码
use mysql;
update user set password=password('root123') where user='root';
flush privileges;
6、更改密码
ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;(设置密码永久不过期)
7、关闭mysql
cd /user/local/mysql/bin
./mysqladmin -uroot -proot123 shutdown
非正常关闭直接kill即可
解决root密码丢失问题
1、将数据库停止(kill进程)
2、添加跳过权限表参数 --skip-grant-tables
./mysqld_safe --defaults-file=/etc/my.cnf --skip-grant-tables &
3、使用mysql命令即可登录
mysql
use mysql;
update user set authentication_string=password('root') where user='root';
4、去掉skip参数重启数据库即可
mysql链接方式:
1、tcp/ip方式
mysql -u username -p password -P port -h IP
2、socket方式
mysql -u username -password -S /tmp/mysql.socket
用户权限管理:
Mysql分为超级管理权限用户,即root用户,和由root用户创建的用户
创建用户的方法:
1)、 create user 用户名@主机IP identified by '密码'; 为了安全不要为用户创建表、改表等DMA权限,逐季IP避免使用 %,但是可以配置一个IP网段;
例如为库TEST创建一个test用户,并赋予只读权限:
create user 'test'@'192.168.1.%' identified by 'abc123';
grant select on TEST(数据库名字).* to 'test'@'192.168.1.%' identified by 'abc123';
赋予读写权限
grant select,insert,update,delete on TEST(数据库名字).* to 'test'@'192.168.1.%' identified by 'abc123';
flush privileges;