摘要:在centos上安装配置mysql还是比较麻烦的一个事,我也找了很多文章,都没成功,后来是参照了这篇博文:http://www.cnblogs.com/Troy-Lv5/;但又不完全同于他的步骤,安装配置成功。以下是具体步骤:(文章第二部分有包管理器方式安装过程)
一、准备安装
由于CentOS7自带的是 Mariadb, 所以先来删除他吧…
- 查找版本
# rpm -qa|grep mariadb
执行命令后会出现类似 MariaDB-server-5.5.49-1.el7.centos.x86_64 之类的鬼…记住名字就行了… - 删除
# rpm -e --nodeps 上面查出来的文件名
- 删除配置文件(有则删除,无就不用管)
# rm /etc/my.cnf
二、开始安装mysql
1.首先官方下载MySQL Community Server 5.5.40
2.使用命令把文件上传到CentOS中(参照上篇文章Coentos安装JDK)
rz -y
3.解压(解压后用ls命令查看是否生成解压后的文件夹)
tar -xzvf mysql-5.5.40-linux2.6-x86_64.tar.gz
(将mysql-5.5.40-linux2.6-x86_64.tar.gz压缩包解压到当前路径)
tar -xzvf mysql-5.5.40-linux2.6-x86_64.tar.gz /usr /tmp
(将mysql-5.5.40-linux2.6-x86_64.tar.gz压缩包解压到/tmp)
- 把解压后的文件夹复制到local文件夹, 注意,这里前面mysql的文件夹最好使用 ls 命令查看一下.
# mv mysql-5.5.40-linux2.6-x86_64 /usr/local
- 修改文件夹名称, 注意文件夹名称
# cd /usr/local
# mv mysql-5.5.40-linux2.6-x86_64 mysql-5.5.40
- 修改my.cnf配置文件
# vi /etc/my.cnf
将以下内容添加到my.cnf
# 设置mysql客户端默认字符集
default-character-set=utf8
socket=/var/lib/mysql/mysql.sock
[mysqld]
skip-name-resolve
#设置3306端口
port = 3306
socket=/var/lib/mysql/mysql.sock
# 设置mysql的安装目录, 这里的目录一定要是你解压后并且改了名的目录哟..
basedir=/usr/local/mysql-5.5.40
# 设置mysql数据库的数据的存放目录, 这里的目录一定要是你解压后并且改了名的目录哟..
datadir=/usr/local/mysql-5.5.40/data
# 允许最大连接数
max_connections=200
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
lower_case_table_name=1
max_allowed_packet=16M
- 切换目录到mysql中
# cd /usr/local/mysql-5.5.40
- 添加用户组与用户, 这里需要将目录切换到mysql目录下哟…
# groupadd mysql
# useradd -g mysql mysql
# chown -R mysql:mysql ./
- 安装mysql(比较重要,网上很多教程这步的代码错了)
./scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql-5.5.40/ --datadir=/usr/local/mysql-5.5.40/data/
- 配置Mysql
# chown -R mysql:mysql data
# chown 777 /etc.my.cnf
# cp ./support-files/mysql.server /etc/rc.d/init.d/mysqld
# chmod +x /etc/rc.d/init.d/mysqld
# chkconfig --add mysqld
# chkconfig --list mysqld
- 开启服务
# service mysqld start
- 配置PATH
# vi ~/.bash_profile
在文件最后面加入以下内容,并使用:wq保存
export PATH=$PATH:/usr/local/mysql-5.5.40/bin
- 刷新PATH
# source ~/.bash_profile
- 登录mysql, 这时mysql没有密码, 当出现Enter password:时直接回车
# mysql -uroot -p
- 修改root密码
mysql> use mysql
mysql> update user set password=password('需要设置的密码') where user='root' and host='localhost';
mysql> flush privileges;
- 设置远程登录
mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '刚才设置的root密码' WITH GRANT OPTION;
到此所有配置全部完毕. 你可以使用sqlyog或者其他方式登录mysql了…
内容二 使用包管理器安装步骤
在CentOS 7上安装和配置MySQL的过程如下:
安装MySQL:
使用yum包管理器安装MySQL:
sudo yum update
sudo yum install mysql-server
启动MySQL服务:
sudo systemctl start mysqld
配置MySQL:
针对初始配置,运行MySQL安全性脚本:
sudo mysql_secure_installation
将被提示执行一系列的安全设置,例如设置root密码、删除匿名用户、禁止远程root登录等。按照提示进行操作以确保MySQL的安全性。
启用MySQL服务:
sudo systemctl enable mysqld
确保在系统启动时自动启动MySQL服务。
访问MySQL:
使用以下命令登录到MySQL控制台:
mysql -u root -p
输入您在安全性脚本中设置的root密码。
配置防火墙:
如果系统有防火墙,确保3306端口是打开的:
sudo firewall-cmd --zone=public --add-port=3306/tcp --permanent
sudo firewall-cmd --reload
管理MySQL服务:
使用以下命令可以管理MySQL服务:
sudo systemctl start mysqld # 启动MySQL服务
sudo systemctl stop mysqld # 停止MySQL服务
sudo systemctl restart mysqld # 重启MySQL服务
配置远程访问(可选):
如果需要允许远程访问MySQL服务器,需要修改MySQL配置文件以允许远程访问,并相应调整防火墙设置。编辑MySQL配置文件:
打开MySQL配置文件/etc/my.cnf或/etc/mysql/my.cnf,具体文件路径取决于您的MySQL版本和操作系统。
绑定MySQL服务器IP:
找到bind-address参数并将其设置为MySQL服务器的IP地址,如果希望允许任何IP访问,可以将其设置为0.0.0.0。确保行类似于以下内容:
bind-address = 0.0.0.0
授权远程访问用户:
在MySQL中为远程访问的用户授予权限。运行以下命令进入MySQL控制台:
mysql -u root -p
然后使用以下命令授予远程访问权限,将remote_user和password替换为您的实际用户名和密码,以及remote_ip替换为远程访问的IP地址:
GRANT ALL PRIVILEGES ON *.* TO 'remote_user'@'remote_ip' IDENTIFIED BY 'password' WITH GRANT OPTION;
最后,刷新权限使更改生效:
FLUSH PRIVILEGES;
重启MySQL服务以使更改生效:
sudo systemctl restart mysqld
更新防火墙规则:
sudo firewall-cmd --zone=public --add-port=3306/tcp --permanent
sudo firewall-cmd --reload
仅允许必要的IP访问数据库。
上一篇文章:Centos安装配置JDK详细过程