头图

一.安装前准备

检查是否已安装

rpm -qa | grep mysql

如果已安装,执行删除命令

rpm -e --nodeps mysql-libs-5.1.73-5.el6_6.x86_64

查询所有mysql文件夹并删除

[root@localhost /]# whereis mysql
mysql: /usr/bin/mysql /usr/include/mysql
[root@localhost lib]# find / -name mysql
/data/mysql
/data/mysql/mysql
[root@localhost /]#  rm -rf /usr/bin/mysql /usr/include/mysql /data/mysql /data/mysql/mysql 

mysql用户组和用户是否存在,如果没有,则创建

[root@localhost /]# cat /etc/group | grep mysql
[root@localhost /]# cat /etc/passwd |grep mysql
[root@localhost /]# groupadd mysql
[root@localhost /]# useradd -r -g mysql mysql
[root@localhost /]# 

二.下载安装mysql

官网下载mysql安装包

wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz

解压安装包

tar xzvf mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz

将文件移动到/usr/local 下并重命名

mv mysql-5.7.24-linux-glibc2.12-x86_64 /usr/local/mysql

在/usr/local/mysql目录下创建data目录

mkdir /usr/local/mysql/data

更改mysql目录下所有的目录及文件夹所属的用户组和用户,以及权限

chown -R mysql:mysql /usr/local/mysql
chmod -R 755 /usr/local/mysql

编译安装并初始化mysql,【务必记住初始化输出日志末尾的密码】(数据库管理员临时密码)

cd /usr/local/mysql/bin
./mysqld --initialize --user=mysql --datadir=/usr/local/mysql/data --basedir=/usr/local/mysql

编辑配置文件my.cnf,覆盖配置如下

[mysqld]
#skip-grant-tables
sql_mode=NO_ENGINE_SUBSTITUTION
max_connections=4000
default-storage-engine=INNODB
character_set_server=utf8
lower_case_table_names = 1

basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
socket=/tmp/mysql.sock
log-error=/usr/local/mysql/data/mysqld.log
pid-file=/usr/local/mysql/data/mysqld.pid

innodb_buffer_pool_size=4G
innodb_log_file_size=256M
innodb_flush_method=O_DIRECT
#########end innodb#######################
max_allowed_packet=1024M

###skip-grant-tables###

wait_timeout=31536000

测试启动mysql服务器

/usr/local/mysql/support-files/mysql.server start
出现Starting MySql                         [ ok ]说明可正常启动

登录mysql,修改密码

[root@localhost /]#  mysql -u root -p
Enter password:
mysql>set password for root@localhost = password('yourpass');
注:如果密码无法登陆,可将my.cnf文件中的skip-grant-tables解开注释,跳过密码登陆

三.mysql用户操作

查看所有用户信息

select user, authentication_string, host from user;

创建用户 【user:用户名 | localhost:IP地址、%代表所有IP都可以访问 | 123123:密码】

create user 'user'@'localhost' identified by '123123';

刷新写入

flush privileges;

为某个用户指定IP

update user set host = '172.xx.xx.xxx' where user = 'admin';

修改用户'username'@'host'所能访问的数据库

GRANT all privileges ON databasename.tablename TO 'username'@'host';

代码乐章
25 声望2 粉丝

自我介绍一下,00后python程序员,在不断学习的道路上,将自己所学尽量分享给大家,xdm有什么有趣的代码也可以投稿分享!