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 mysqluseradd -r -g mysql -s /bin/false mysqlchown -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=utf8socket=/u01/data/3306/mysql.sock[mysqld]#skip-name-resolveport = 3306socket=/u01/data/3306/mysql.sockbasedir=/u01/app/mysqldatadir=/u01/data/3306/datacharacter-set-server=utf8default-storage-engine=INNODB innodb_buffer_pool_size = 200Mmax_allowed_packet=16Mexplicit_defaults_for_timestamp=1log-output=FILEgeneral_log = 0general_log_file=/u01/log/3306/3306db-general.errslow_query_log = ONslow_query_log_file=/u01/log/3306/3306db-query.errlong_query_time=10log-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-reloadsystemctl stop mysqldsystemctl start mysqldsystemctl enable mysqldsystemctl 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 utf8mb4create 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;
