首页 > 数据库 > MySQL > mysql5.7安装_centos7
1、oracle官网下载社区版,generic为正式版

2、 修改主机名,更改hosts文件
hostnamectl set-hostname dbserver echo "xx.xx.xx.xxx dbserver" >> /etc/hosts
xx.xx.xx.xxx为你自己的ip
3、卸载主机自带mysql
rpm -qa | grep *mysql* rpm -e --nodeps mysql rpm -qa | grep mariadb* rpm -e --nodeps mariadb
4、安装mysql5.7
mkdir -p /u01/app/ mkdir -p /u01/data/3306 mkdir -p /u01/log/3306 tar xvf mysql-5.7.28-linux-glibc2.12-x86_64.tar.gz mv mysql-5.7.28-linux-glibc2.12-x86_64 /u01/app/mysql
5、创建mysql用户组,目录授权
groupadd mysql
useradd -r -g mysql -s /bin/false mysql
chown -R mysql:mysql /u01
vi ~/.bash_profile
PATH=$PATH:/u01/app/mysql/bin:$HOME/bin
6、配置参数文件
[root@dbserver mysql]# cat /u01/data/3306/my.cnf [mysql] default-character-set=utf8 socket=/u01/data/3306/mysql.sock [mysqld] #skip-name-resolve port = 3306 socket=/u01/data/3306/mysql.sock basedir=/u01/app/mysql datadir=/u01/data/3306/data character-set-server=utf8 default-storage-engine=INNODB innodb_buffer_pool_size = 200M max_allowed_packet=16M explicit_defaults_for_timestamp=1 log-output=FILE general_log = 0 general_log_file=/u01/log/3306/3306db-general.err slow_query_log = ON slow_query_log_file=/u01/log/3306/3306db-query.err long_query_time=10 log-error=/u01/log/3306/3306db-error.err [root@dbserver mysql]#
vi /u01/data/3306/my.cnf
[mysql]
default-character-set=utf8
socket=/u01/data/3306/mysql.sock
[mysqld]
#skip-name-resolve
port = 3306
socket=/u01/data/3306/mysql.sock
basedir=/u01/app/mysql
datadir=/u01/data/3306/data
character-set-server=utf8
default-storage-engine=INNODB
innodb_buffer_pool_size = 200M
max_allowed_packet=16M
explicit_defaults_for_timestamp=1
log-output=FILE
general_log = 0
general_log_file=/u01/log/3306/3306db-general.err
slow_query_log = ON
slow_query_log_file=/u01/log/3306/3306db-query.err
long_query_time=10
log-error=/u01/log/3306/3306db-error.err
7、mysql数据库初始化
ln -sf /u01/data/3306/my.cnf /etc/my.cnf /u01/app/mysql/bin/mysqld --initialize --user=mysql --basedir=/u01/app/mysql/ --datadir=/u01/data/3306/data/
8、配置CENTOS linux启动和停止脚本
vi /usr/lib/systemd/system/mysqld.service
[Unit] Description=MySQL Server Documentation=man:mysqld(8) Documentation=http://dev/mysql/doc/refman/en/using-sysemd.html After=syslog.target After=network.target [Install] WantedBy=multi-user.target [Service] User=mysql Group=mysql ExecStart=/u01/app/mysql/bin/mysqld --defaults-file=/u01/data/3306/my.cnf LimitNOFILE = 65536 LimitNPROC = 65536
9、配置systemctl 启动和停止脚本方法
systemctl daemon-reload
systemctl stop mysqld
systemctl start mysqld
systemctl enable mysqld
systemctl status mysqld
手动启动和停止mysql的方法
nohup /u01/app/mysql/bin/mysqld_safe --defaults-file=/u01/data/3306/my.cnf &
mysqladmin -uroot -p shutdown -S /u01/data/3306/mysql.sock
10、修改root密码
mysql -uroot -p
初始密码可以在文件/u01/log/3306/3306db-error.err中查看
alter user 'root'@'localhost' IDENTIFIED BY 'rootroot';
mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | sys | +--------------------+ 4 rows in set (0.00 sec) mysql>
11、允许root用户远程登陆
mysql -uroot -p use mysql select host,user from user where user='root'; create USER 'root'@'%' identified by 'rootroot'; grant all privileges on *.* to 'root'@'%' with grant option; exit mysql -uroot -p -h10.8.98.150
远程的话记得开放防火墙3306端口
12、创建数据库,创建用户,查看用户,分配权限
create database testdb default charset utf8mb4
create user 'testuser'@'%' identified by 'testtest';
select host,user from mysql.user;
grant all privileges on testdb.* to 'testuser'@'%' identified by 'testtest';
grant all privileges on testdb.* to 'testuser'@'localhost' identified by 'testtest';
创建表
use testdb
create table testtbs(
id int auto_increment primary key,
name varchar(15)
) engine= InnoDB;
插入数据
insert into testtbs values(1,'test01');
insert into testtbs values(2,'test02');
insert into testtbs values(3,'test03');
commit;
查询数据
select * from testdb.testtbs;
use testdb;
select * from testtbs;
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70004783/viewspace-2794003/ ,如需转载,请注明出处,否则将追究法律责任。