Linux安装Mysql

*准备工作,把mysql传到服务器。检查是否有旧版本,然后将其卸载

检测是否已经安装了mysql
rpm -qa | grep mysql 
  
如果已经安装了,将其卸载,如:
rpm -e --nodeps  mysql-libs-5.1.71-1.el6.x86_64

 

1、创建mysql的安装目录 在usr/local/mysql

Mkdir mysql

2、解压mysql(改成自己的mysql版本)

tar -xvf MySQL-5.6.22-1.el6.i686.rpm-bundle.tar -C /usr/local/mysql

3、安装依赖

yum -y install libaio.so.1 libgcc_s.so.1 libstdc++.so.6
yum  update libstdc++-4.4.7-4.el6.x86_64

yum -y install libncurses.so.5 libtinfo.so.5

修正:

3.1创建mysql用户组和用户并修改权限

groupadd mysql
useradd -r -g mysql mysql

3.2创建数据目录并赋予权限

mkdir -p  /data/mysql              #创建目录
chown mysql:mysql -R /data/mysql   #赋予权限

3.3 配置my.cnf

vim /etc/my.cnf

3.4内容

[mysqld]
bind-address=0.0.0.0
port=3306
user=mysql
basedir=/usr/local/mysql/mysql-5.7.37-linux-glibc2.12-x86_64
datadir=/data/mysql
socket=/tmp/mysql.sock
log-error=/data/mysql/mysql.err
pid-file=/data/mysql/mysql.pid
#character config
character_set_server=utf8mb4
symbolic-links=0
explicit_defaults_for_timestamp=true

esc  :wq 退出

3.5 跳转目录

cd /usr/local/mysql/mysql-5.7.37-linux-glibc2.12-x86_64/bin

3.6 初始化

./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql/ --datadir=/data/mysql/ --user=mysql --initialize

3.7 移动mysql.server文件

cp /usr/local/mysql/mysql-5.7.37-linux-glibc2.12-x86_64/support-files/mysql.server /etc/init.d/mysql

3.8 启动

service mysql start
 
ps -ef|grep mysql
 

下图代表成功

3.9 首次登录

./mysql -u root -p   #bin目录下

可能异常

./mysql: error while loading shared libraries: libncurses.so.5: cannot open shared object file: No such file or directory

解决方案

yum install libncurses*

 

4、安装mysql服务器端

rpm -ivh MySQL-server-5.6.22-1.el6.i686.rpm

如果提示文件冲突 

yum remove mysql-libs

5、安装mysql客户端

rpm -ivh MySQL-client-5.6.22-1.el6.i686.rpm

6、启动mysql服务

service mysql status

service mysql start

如果提示 错误

[root@VM_0_2_centos mysql]# service mysql start
Starting MySQL.. ERROR! The server quit without updating PID file (/var/lib/mysql/VM_0_2_centos.pid).

解决方案

先
yum -y install autoconf
然后
/usr/bin/mysql_install_db --user=mysql
最后
service mysql start

原因是系统已经安装了其他版本的mysql-libs包导致不兼容。

7、登录mysql

有时候会有随机密码在

/root/.mysql_secret

没有随机密码就用空密码登录

mysql -u root -p

修改密码

方法一:
在mysql系统外,使用mysqladmin
# mysqladmin -u root -p password "test123"
Enter password: 【输入原来的密码】

方法二:
通过登录mysql系统,
# mysql -uroot -p
Enter password: 【输入原来的密码】
mysql>use mysql;
mysql> update user set password=passworD("test") where user='root';
mysql> flush privileges;
mysql> exit;

8.开机自动启动mysql

加入到系统服务:
chkconfig --add mysql
自动启动:
chkconfig mysql on

9远程访问连接

grant all privileges on *.* to 'root' @'%' identified by '远程访问数据库密码';
flush privileges;

10防火墙设置

/sbin/iptables -I INPUT -p tcp --dport 3306 -j ACCEPT
/etc/rc.d/init.d/iptables save

 

最后修改于 2020-02-25 10:26:24
如果觉得我的文章对你有用,请随意赞赏
扫一扫支付
上一篇