卸载原来
1 2 3 4
| rpm -qa | grep mariadb
rpm -e --nodeps mariadb-libs
|
Mysql用户准备
添加用户组和用户
1 2 3 4
| groupadd mysql
useradd -g mysql mysql
|
压缩包下载
首先去官网下载对应版本的压缩包,这里我的版本是5.7.30。
解压压缩包
在对应目录下解压Mysql压缩包
1 2
| cd /usr/local tar -zxvf mysql-5.7.30-linux-glibc2.12-x86_64.tar.gz
|
重命名
对解压后的文件夹重新命名
1
| mv mysql-5.7.30-linux-glibc2.12-x86_64 mysql
|
安装
创建data目录存放数据,将目录授权给mysql用户, 进行mysql初始化。
1 2 3 4 5 6 7 8
| cd mysql mkdir /opt/database/mysql_data chown -R mysql:mysql /opt/database/mysql_data/ chown -R mysql:mysql ./ chmod 755 /opt/database/mysql_data/ -R chmod 755 /usr/local/mysql/ -R ./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql/ --datadir=/opt/database/mysql_data/
|
修改配置文件my.cnf
配置文件参考如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
| [mysqld] datadir=/opt/database/mysql_data port=3306 sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER symbolic-links=0 max_connections=600 slow_query_log=1 slow_query_log_file=/opt/database/mysql_data/slow_query_log.log long_query_time=2 lower_case_table_names=1 character_set_server=utf8mb4 log-error=/opt/database/mysql_data/mysql_error.log
innodb_data_home_dir = /opt/database/mysql_data
innodb_log_group_home_dir = /opt/database/mysql_data innodb_buffer_pool_size = 128M innodb_log_file_size = 48M innodb_log_buffer_size = 8M innodb_flush_log_at_trx_commit = 1 innodb_lock_wait_timeout = 50 innodb_autoinc_lock_mode = 2
innodb_file_per_table=1 innodb_large_prefix=1 innodb_file_per_table=true
|
配置启动文件
1 2
| ln -f -s /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld ln -f -s /bin/my_print_defaults /usr/bin/
|
设置环境变量
设置环境变量来使任何地方都可以使用mysql命令
1 2 3 4
| vi /etc/profile
source /etc/profile
|
启动
连接并修改密码
1 2 3 4 5
| #修改当前用户密码 ALTER USER USER() IDENTIFIED BY 'root'; #修改指定用户 ALTER USER 'root'@'%' IDENTIFIED BY 'root'; flush privileges;
|
开启远程访问
1 2
| update user set host='%' where user = 'root' flush privileges;
|
主机连接虚拟机,记得开放端口
1 2
| firewall-cmd --zone=public --add-port=3306/tcp --permanent firewall-cmd --reload
|