mysql 下载
	
	https://blog.csdn.net/qq_22338401/article/details/88171031
	
	https://downloads.mysql.com/archives/community/
	
	要选这个版本下载:Compressed TAR Archive
	
	tar -zxvf mysql-5.7.28-linux-glibc2.12-x86_64.tar.gz	
	mv mysql-5.7.28-linux-glibc2.12-x86_64 /usr/local/servers/mysql
	cd /usr/local/servers/		
	/usr/local/servers/mysql/bin/mysqld --initialize --user=web --basedir=/usr/local/servers/mysql --datadir=/usr/local/servers/mysql/data #一定要用这个,把当前mysql使用用户也改用web用户,
	
	mysql.cnf
		[mysqld]
		user = web					#这个要根据当前建立的用户组要设置,要不然reboot重启会出异常,被坑,这个对应上面的
		max_allowed_packet=250M 		#大的插入和更新会被限制
		max_connections = 6000 		#mysql最大连接数
		#mysqlx_max_connections=6000	#mysql8新最大连接数(不知道有什么用)
		open_files_limit=60000 		#控制文件打开数
		
		#[mysqld]
		binlog_format= MIXED #binlog日志格式,mysql默认采用statement,建议使用mixed
		log-bin=mysql-bin				#binlog日志文件:/var/lib/mysql/mysql-bin 不指定默认这个路径
		server-id=1
		
		port = 65534 					#更改为您想要的端口号
		log-error=/logs/mysqld.log #开启必须配置好: docker exec -ti mysql57 /bin/bash | chown -R mysql:mysql /logs/mysqld.log | chown -R 644 /logs/mysqld.log 
		
	vi /home/data/docker/web/mysql/conf/mysql.cnf 没有就要生成

	
	复制16的: /usr/local/servers/mysql/my.cnf 与 /usr/local/servers/mysql/support-files/mysql.server
				
		#注意这个地方,最容易漏了改了
		conf=/usr/local/servers/mysql/my.cnf 			
		cp /usr/local/servers/mysql/support-files/mysql.server /usr/local/servers/mysql/mysqld	
	
	 记得要查一下删除旧的my.cnf,要不然起动失败
		 find / -name my.cnf
		 rm -rf /etc/my.cnf
	
	
	如果你需要空密码进入(可选):
		在[mysqld]下添加skip-grant-tables		
		/usr/local/servers/mysql/bin/mysql -uroot
		
		//这个好象没什么用
		update mysql.user set authentication_string=password('123456') where user='root';
		flush privileges;
		
		开启远程
		/usr/local/servers/mysql/bin/mysql -uroot
		use mysql;
		update user set host = '%' where user = 'root';		
		select host, user from user;
				
		再修改(这个改成过了才有用)
		/usr/local/servers/mysql/bin/mysql -u root -p
		SET PASSWORD = PASSWORD('123456');
		flush privileges;
		
	调整mysql最大链接数(可选,参考):
		
		 1.所有进程打开的文件描述符数不能超过sudo cat /proc/sys/fs/file-max
		 		sudo vi /etc/sysctl.conf				
				fs.file-max = 2000000				
				sysctl -p 然后执行命令,使修改配置立即生效				
					
		 2.单个进程打开的文件描述符数不能超过用户 ulimit中的nofile的soft limi
		 		sudo vi /etc/security/limits.conf	
					
				添加:
					ulimit 值超出允许范围导致无法登陆操作系统(是在新添加的管理员上进行设置,不能用*,如果这个账号登陆不进来可以用其它账号),可以用(ulimit -n 999999这个是临时设置), 自己手动输值来测试一下是不是对的,用ulimit -u来查看当前配饰	用法:https://www.cnblogs.com/taiguyiba/p/7868894.html
								
					web hard nofile 655350 #针对web用户可打开的文件描述符的最大数(超过会报错);
					web soft nofile 655350 #针对web用户可打开的文件描述符的最大数(超过会警告);			
					web soft nproc 655350 #用户创建的进程数的限制
					web hard nproc 655350 #用户创建的进程数的限制								
					
					注意:这里要重新启动linux,要不然没有效果.被坑得很惨: sudo reboot
		 		
		 3.nofile的soft limit不能超过其hard limit		
		 4.nofile的hard limt 不能超过 /proc/sys/fs/nr_open
		 
		 说明: https://blog.csdn.net/sunny05296/article/details/54952009 (设置)
		 		https://blog.csdn.net/genzld/article/details/86564821	(说明)
			
		 5、然后就可以在my.cnf中修改较大值的max_connections了
				max_allowed_packet=250M #大的插入和更新会被限制
				max_connections = 6000		 #mysql最大连接数
				open_files_limit=60000 #控制文件打开数		
			
			查看可用:https://blog.csdn.net/yoyofu007/article/details/100032969
			show variables like '%open%'; 
			show variables like '%max_connections%';	
			
		6、查看连接数:show status like 'Threads%'; 			
				+-------------------+-------+ 
				| Variable_name | Value | 
				+-------------------+-------+ 
				| Threads_cached | 58 | 
				| Threads_connected | 57 | ###这个数值指的是打开的连接数 
				| Threads_created | 3676 | 
				| Threads_running | 4 | ###代表当前并发数 
				+-------------------+-------+ 

docker 方式:http://www.diyyq.com/kaifahuanjing/4.html

点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论

微信小程序

微信扫一扫体验

立即
投稿

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部
{__SCRIPT__}