1、下载mysql压缩包
2、将下载的文件夹上传到Linux服务器,放置到 /usr/local目录下 ,然后解压:
tar -xvf mysql-8.0.13-linux-glibc2.12-x86_64.tar.xz
3、将解压得到的文件夹重命名为mysql
mv mysql-8.0.13-linux-glibc2.12-x86_64 mysql
4、进入到/usr/local目录下,创建用户和用户组并授权
cd /usr/local/
groupadd mysql
useradd -r -g mysql mysql
cd mysql/
#注意:进入mysql文件下授权所有的文件
chown -R mysql:mysql ./
5、进入 /usr/local/mysql目录,创建data文件夹
mkdir data
6、初始化数据库,并会自动生成随机密码,记下等下登陆要用
bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
7、修改/usr/local/mysql目录和data文件夹的所属用户和用户组
chown -R root:root ./
chown -R mysql:mysql data
8、在/usr/local/mysql/support-files/目录下创建my-default.cnf ,并修改权限
cd support-files/
touch my-default.cnf
chmod 777 ./my-default.cnf
9、将新建的my-default.cnf 复制到 /etc/my.cnf ,此时两个文件都是空文件
cp my-default.cnf /etc/my.cnf
10、编辑my.cnf
vim /etc/my.cnf
1
[mysqld]
Remove leading # and set to the amount of RAM for the most important data
cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
innodb_buffer_pool_size = 128M
Remove leading # to turn on a very important data integrity option: logging
changes to the binary log between backups.
log_bin
These are commonly set, remove the # and set as required.
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
socket = /tmp/mysql.sock
log-error = /usr/local/mysql/data/error.log
pid-file = /usr/local/mysql/data/mysql.pid
tmpdir = /tmp
#port = 5186
#lower_case_table_names = 1
server_id = …
socket = …
#lower_case_table_names = 1
max_allowed_packet=32M
default-authentication-plugin = mysql_native_password
#lower_case_file_system = on
#lower_case_table_names = 1
log_bin_trust_function_creators = ON
Remove leading # to set options mainly useful for reporting servers.
The server defaults are faster for transactions and fast SELECTs.
Adjust sizes as needed, experiment to find the optimal values.
join_buffer_size = 128M
sort_buffer_size = 2M
read_rnd_buffer_size = 2M
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
11、设置开机自启动mysql
cd support-files/
cp mysql.server /etc/init.d/mysql
chmod +x /etc/init.d/mysql
12、注册服务
chkconfig --add mysql
1
12、查看开机自启动是否成功
chkconfig --list mysql
1
13、编辑 etc/ld.so.conf,配置下面的路径,不然会报错
vim /etc/ld.so.conf
添加如下内容:
/usr/local/mysql/lib
1
2
3
4
14、配置Mysql环境变量
vim /etc/profile
添加如下内容:
#MYSQL ENVIRONMENT
export PATH=$PATH:/usr/local/mysql/bin:/usr/local/mysql/lib
添加完之后保存并退出,然后执行
source /etc/profil
15.登陆,这里输入上面第6步随机生成得密码,细心点输入登陆成功后第一时间更改密码,否则无法进行其他操作:
ALTER USER ‘root’@‘localhost’ IDENTIFIED WITH mysql_native_password BY ‘password’;
1
16、开启Mysql的远程连接
mysql -uroot -p #登录数据库
use mysql;#选择mysql数据库
select host, user, authentication_string, plugin from user;#查看用户信息
create user ‘username’@’%’ identified by ‘password’;#新建非root用户
ALTER USER ‘username’@’%’ IDENTIFIED WITH mysql_native_password BY ‘password’;
#授权新建用户可以远程登陆,并解决密码问题
flush privileges;#立即生效
exit;#退出
service mysql restart#重启mysql服务
注意:此版本的Mysql不支持授权root用户远程登录,所以需要新建非root用户,并且远程登录时也需要使用非root用户登录。
17、开启3306防火墙白名单,即可使用远程连接工具连接成功了。关闭防火墙命令
service firewalld stop
systemctl status firewalld.service
systemctl disable firewalld.service