【服务器】安装配置添加mysql用户(安装mysql5.6)

  1. 1. 检查
  2. 2. 安装
  3. 3. 配置
  4. 4. 解决问题
  5. 5. 附录

检查

1
2
service mysql status
lsof -i:3306

安装

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
# 安装源

# wget https://repo.mysql.com/mysql57-community-release-el7-11.noarch.rpm
# yum localinstall mysql57-community-release-el7-11.noarch.rpm
# or
wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
rpm -ivh mysql-community-release-el7-5.noarch.rpm

# 检查是否安装成功
yum repolist enabled | grep "mysql.*-community.*"

# 修改安装的mysql版本 5.7 -> 5.6 将5.6下的enable设置成1 5.7下的enable设置成0即可
vim /etc/yum.repos.d/mysql-community.repo
# or
yum repolist all | grep mysql
yum-config-manager --enable mysql56-community
yum-config-manager --disable mysql57-community

# 安装
yum install mysql-community-server

# 启动
systemctl start mysqld
# 查看启动状态
systemctl status mysqld
# 开机启动
systemctl enable mysqld
systemctl daemon-reload

配置

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24

# mysql安全设置
mysql_secure_installation;
# 正常情况下root是没有密码的,直接回车就可以进入。
# 如果登陆不成功,可以使用配置里的修改密码部分重置密码。

# 创建用户
mysql
mysql> create user 'sa'@'%' identified by 'password'; # 普通用户
mysql> create user 'admin'@'%' identified by 'password'; # 管理员用户
# 如果出错 有可能数据库已经存在了这个用户 这时候直接修改密码就好了 使用update语句

# 授予权限
mysql> grant select,insert,update,delete on *.* to 'sa'@'%';
mysql> grant all on *.* to 'admin'@'%';

# 刷新权限
mysql> flush privileges;

# 可以直接增加用户和权限
# mysql> GRANT ALL PRIVILEGES ON *.* TO 'username'@'%' IDENTIFIED BY 'userpass' WITH GRANT OPTION;

# 查看编码
mysql> show variables like '%character%'; # 设置见附录

解决问题

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
# 修改root密码 root 默认密码是空的 可以直接本地登录
# 解决 Access denied for user 'root'@'localhost' 以及修改密码
systemctl stop mysqld
mysqld_safe --user=mysql --skip-grant-tables --skip-networking &
mysql -u root
mysql> use mysql;
mysql> UPDATE user SET Password=PASSWORD('newpassword') where USER='root';
mysql> FLUSH PRIVILEGES;
mysql> quit
mysqladmin shutdown -u root -p # 关闭安全模式
systemctl start mysqld

# 备份

mysqldump --socket=/home/data/mysql/mysql.sock --single-transaction=TRUE -u root -p xxx > data.sql

# 还原

mysql --socket=/home/data/mysql/mysql.sock -u root -p xxx < data.sql

# 注意 socket目录 在my.cnf中配置

附录

默认文件路径:

配置文件:/etc/my.cnf
日志文件:/var/log//var/log/mysqld.log
服务启动脚本:/usr/lib/systemd/system/mysqld.service
socket文件:/var/run/mysqld/mysqld.pid

编码:

1
2
3
4
5
6
# 修改/etc/my.cnf配置文件,在[mysqld]下添加编码配置,如下所示:
[mysqld]
character_set_server=utf8
init_connect='SET NAMES utf8'
[mysql]
default-character-set=utf-8

注意:如果有安装相关异常,或者本文有任何问题。欢迎指正。联系方式:feedback@zhoyq.com

欢迎访问博客地址:https://www.zhoyq.com