官网下载:
https://www.percona.com/downloads/Percona-Server-LATEST/
额外插件:jemalloc-3.6.0-1.el6.x86_64.rpm
rpm安装方式
根据自己的系统下载合适自己的安装包
安装:rpm -ivh xx.rpm,安装顺序,我安装的时候还缺了perl-JSON
rpm -ivh jemalloc-3.6.0-1.el6.x86_64.rpm rpm -ivh perl-JSON-2.15-5.el6.noarch.rpm yum localinstall *.rpm (会自动计算依赖,然后按顺序安装) |
启动:service mysql start / systemctl start mysqld(该命令是CentOS7有的)
系统防火墙开发3306端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent permanent:表示永久生效 firewall-cmd --reload #重启 |
修改配置文件【/ect/my.cnf】
[mysqld] character_set_server=utf8 #0.0.0.0表示监听机器上的全部ip bind-address=0.0.0.0 #跳过DNS解析 skip-name-resolve 将my.cnf里面includedir目录下的配置都拷到my.cnf下,方便点,然后去掉includedir |
最后的配置如下
[client] socket=/var/lib/mysql/mysql.sock [mysqld] datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock log-error=/var/log/mysqld.log pid-file=/var/run/mysqld/mysqld.pid log-bin log_slave_updates expire_logs_days=7 symbolic-links=0 character_set_server=utf8 #0.0.0.0表示监听机器上的全部ip bind-address=0.0.0.0 #跳过DNS解析 skip-name-resolve |
rpm安装或者yum安装,安装完后启动,修改密码后就能使用
重启服务:service mysqld restart
删除mysql自动启动:chkconfig mysqld off
系统重新启动后,数据库如果自动启动,并且同步数据很多,全部的实例只有等数据同步完成后才能使用。正确的做法是,从其他实例备份数据到该台服务器,只会再启动
修改数据库密码:在日志里面找密码【cat /var/log/mysqld.log | grep "A temporary" 】
使用【mysql_secure_installation】修改密码(必须大小写字母数字特殊字符),接下来就是一直y。我设置的是Qwer_1234
创建用户和授权都是和mysql的操作一样的
mysql -uroot -pQwer_1234 create user 'admin'@'%' identified by '123456'; grant all privileges on *.* to 'admin'@'%'; flush privileges; |
找回root账户密码
修改配置文件【my.cnf】,重启服务,然后直接【mysql】登陆修改密码,然后再删除配置,重启
[mysqld] skip-grant-tables |
直接解压初始化的方式
Software选择【Linux-Generic】,如果是Linux/CentOS下载【ssl101.tar.gz】的
具体下载哪个版本可以点击【online documentation】查看
解压安装包 tar -zxvf Percona-Server-5.7.23-23-Linux.x86_64.ssl101.tar.gz -C ~/app/ 重命名应用 cd ~/app/ mv Percona-Server-5.7.23-23-Linux.x86_64.ssl101.tar.gz ps 创建data目录 mkdir data 修改【support-files/mysql.server】下的【basedir、datadir、lockdir、mysqld_pid_file_path】 basedir=/home/mycat/app/ps datadir=/home/mycat/app/ps/data lockdir=/home/mycat/app/ps mysqld_pid_file_path=/home/mycat/app/ps/mysqld.pid |
创建【my.cnf】并编辑,【touch my.cnf】
[client] socket=/home/mysql/app/pxc/mysql.sock [mysqld] server-id=1000 datadir=/home/mycat/app/ps/data socket=/home/mycat/app/ps/mysql.sock log-error=/home/mycat/app/ps/data/mysqld.err pid-file=/home/mycat/app/ps/mysqld.pid log-bin log_slave_updates expire_logs_days=7 symbolic-links=0 character_set_server=utf8 #0.0.0.0表示监听机器上的全部ip bind-address=0.0.0.0 #跳过DNS解析 skip-name-resolve |
初始化
./bin/mysqld --defaults-file=/home/mycat/app/ps/my.cnf --basedir=/home/mycat/app/ps --datadir=/home/mycat/app/ps/data --initialize --user=mysql |
初始化后密码到【log-error=/home/mycat/app/ps/data/mysqld.log】下看,也就是my.cnf下配置的,搜索【A temporary password】
使用root用户执行,加入service,然后【service psd start】启动
cp /home/mycat/app/ps/support-files/mysql.server /etc/init.d/psd |
或者直接使用下面的命令启动
./bin/mysqld --defaults-file=/home/mycat/app/ps/my.cnf --basedir=/home/mycat/app/ps/ --port=3307 |
登陆MySQL,修改密码
登陆时,在一台机器上有多个MySQL服务时,指定sock可登陆指定的MySQL服务 ./bin/mysql -uroot -p --socket=/home/mycat/app/ps/mysql.sock 设置密码 mysql> set password = password('mysqladmin'); |