注 1.mysql5.7下载地址:https://dev.mysql.com/downloads/mysql/5.7.html#downloads
1.检查系统是否自带有mysql版本
rpm -qa | grep mysql
2.将其自带的mysql版本全部卸载(非常重要,如不卸载,后面会产生冲突)
rpm -e --nodeps mysql-libs-5.1.73-7.el6.x86_64
3.安装所需要的依赖,分别执行以下命令(有些电脑已经安装 ,最好还是执行一下这一步,不然到后面安装报错就比较麻烦了)输入以下命令,点击回车即可,等待安装完成就行
yum install -y numactl
yum install -y perl
4.解压mysql(我保存在/home目录下,可以根据自己的喜好创建mysql的保存路径)
tar -zxvf mysql-5.7.27-linux-glibc2.12-x86_64.tar.gz
mv mysql-5.7.27-linux-glibc2.12-x86_64 mysql
5.创建数据存放目录,初始化mysql(红框里边是数据库临时密码)
cd /home/mysql
mkdir data
./bin/mysqld --user=root --basedir=/home/mysql --datadir=/home/mysql/data --initialize
6.启动数据库,(如果这里你的安装目录不是/usr/local/mysql,启动都会报错)
sh ./support-files/mysql.server start
解决办法:修改mysql配置文件(红框里边的路径都需要修改)
vi ./support-files/mysql.server
保存退出,复制mysql的启动文件放到/etc/init.d/目录下
cp ./support-files/mysql.server /etc/init.d/mysqld
chmod 755 /etc/init.d/mysqld
cd /home/mysql
chown -R mysql.mysql . (这部一定要执行,给data目录权限,否则回启动失败)
ln -s /home/mysql/bin/mysql /usr/bin/mysql (把bin目录下的mysql软连接到/usr/bin/目录下)
启动数据库
service mysqld start
7.登陆mysql(输入上一步找到的密码)
mysql -u root -p
8.修改mysql登陆密码
set password = password('123456');
9.开启 mysql 的远程登录
grant all privileges on *.* to 'root' @'%' identified by 'root';
10.刷新权限
flush privileges;
11.关闭防火墙
service iptables stop
15.开放 Linux 的对外访问的端口 3306
/sbin/iptables -I INPUT -p tcp --dport 3306 -j ACCEPT
16.将修改永久保存到防火墙中
/etc/rc.d/init.d/iptables save
mysql5.7默认是不带my.cnf配置文件,需要自己手动添加
vi /etc/my.cnf
把下面的配置复制保存即可
[client]
port = 3306
socket = /tmp/mysql.sock
[mysqldump]
quick
max_allowed_packet = 128M
#myisam_max_sort_file_size = 10G
[mysql]
no-auto-rehash
max_allowed_packet = 128M
#prompt = '(product)\u@\h [\d]> '
default_character_set = utf8
[myisamchk]
key_buffer_size = 64M
sort_buffer_size = 512k
read_buffer = 2M
write_buffer = 2M
[mysqlhotcopy]
interactive-timeout
[mysqld_safe]
##malloc-lib= /usr/local/mysql/lib/mysql/libjemalloc.so
[mysqld]
skip-name-resolve
character-set-server = utf8
slow-query-log
sync_binlog = 1
binlog_format = row
max_binlog_size = 128M
binlog_cache_size = 1M
expire-logs-days = 5
back_log = 500
long_query_time=1
max_connections=1100
max_user_connections=1000
max_connect_errors=1000
lower_case_table_names = 1
wait_timeout=100
interactive_timeout=100
connect_timeout = 20
slave-net-timeout=30
max-relay-log-size = 256M
relay-log = relay-bin
transaction_isolation = Repeatable-Read
performance_schema=0
#myisam_recover
key_buffer_size = 64M
max_allowed_packet = 16M
#table_cache = 3096
table_open_cache = 6144
table_definition_cache = 4096
sort_buffer_size = 128k
read_buffer_size = 1M
read_rnd_buffer_size = 1M
join_buffer_size = 128k
myisam_sort_buffer_size = 32M
tmp_table_size = 128M
max_heap_table_size = 256M
query_cache_type=0
query_cache_size = 0
bulk_insert_buffer_size = 32M
thread_cache_size = 64
#thread_concurrency = 32
thread_stack = 192K
skip-slave-start
log_bin=mysql_log
server-id=3
遇到问题:
参考:https://blog.csdn.net/qq_34885405/article/details/93041509