Mysql安装与其他操作(Linux)

一、安装

(1)上传、解压、重命名、创建data目录

tar -zxvf ***

mv mysql-5.5 mysql

cd mysql

mkdir data

 

卸载已有的数据库

rpm -qa | grep mysql
rpm -e --nodeps 文件名

 

 

(2)初始化数据库,进入到mysql目录下执行

 ./bin/mysqld --initialize --user=root --basedir=/usr/mysql --datadir=/usr/local/mysql/data

 

 

 

上面这步如果报错,把下面这个自带数据库删除,/etc.my.cnf也删除

rpm -qa | grep mariadb
rpm -e --nodeps 文件名

 

同时安装这个离线包

numactl-2.0.7-3.el6.x86_64.rpm

 

(3)配置/etc/my.cnf

   

[client]

port=3306

socket=/tmp/mysql.sock

                                 

[mysqld]

basedir=/usr/local/mysql

datadir=/usr/local/mysql/data

log-error=/usr/local/mysql/error.log

pid-file = /usr/local/mysql/data/mysql/mysql.pid

user=root

 

port=3306

socket =/tmp/mysql.sock

character-set-server=utf8

#skip-grant-tables

 

 

# 5.7.19后,解决Navicat连接执行sql报错:sql_mode=only_full_group_by

sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION'

 

 

(4)添加到系统服务

Mysql目录下执行

cp ./support-files/mysql.server /etc/init.d/mysql

 

(5)启动mysql

service  mysql  start

如果有类似 Pid文件报错的问题,检查之前的配置是否有误。此外:尝试

修改/etc/selinux/config文件:

将SELINUX=enforcing改为SELINUX=disabled

然后,重启机器。

 

 

 

 

(6)登录mysql,输入刚才初始化的密码(进入安装目录bin下执行)

./mysql -u root -p

 

 如果忘记初始化密码,则以安全模式进入后修改

ln -s /usr/local/mysql/bin/mysqld_safe /usr/bin

mysqld_safe --skip-grant-tables &

 

  修改mysql的初始密码,否则执行不了任何指令

   set password = password('root');

 

 

(7)开启mysql远程登录

查看root用户是否开启远程连接:

select host, user from user

 

更新root用户远程连接

update user set host = '%' where user = 'root';

flush privileges;  //刷新权限

 

 重启服务后即可在本地连接

service  mysql restart

 

 

--如果无法登陆 ,报拒绝连接错误,则需要建立软连接:

先停掉mysql

etc/init.d/mysql stop

建立软连接 ,

ln -s /usr/local/mysql/bin/mysqld_safe /usr/bin

然后再次登陆(进入安装目录bin下)

./mysql -u root -p

show databases;

use mysql;

更新root用户远程连接

update user set host = '%' where user = 'root';

flush privileges; 

exit;
重启服务再次本地连接
#grant all privileges on *.*  to root@'%' identified by 'liwei123456';

  如果还是报Can't connect to MySQL server (10060) ,在阿里控制台把3306端口开启


二、其他操作

 (1)、linux数据库的导出

1.先建立软连接

ln -fs /usr/local/mysql/bin/mysqldump /usr/bin

ln -fs /usr/local/mysql/bin/mysql /usr/bin

2.在mysql安装目录bin下执行

mysqldump -uroot -p pinyougoudb  > abc.sql

导出之后路径默认在bin下

 


 

删除某个数据库:drop databse  xxx ;

 


 

(2)、关闭linux的防火墙

临时关闭,下次开机的时候又会重新启动防火墙

service iptables stop   临时关闭

service iptables start   临时开启

 

查看状态   service iptables status

 

永久关闭。下次开机后,防火墙不会在重启

 

chkconfig iptables off  永久关闭

chkconfig iptables on  永久开启


 

(3)卸载原来的myql

1. 查找mysql,卸载

rpm -qa | grep -i mysql

rpm -qa | grep -i mariadb

 

rpm -e --nodeps ***:卸载

 

 

2. 收集、删除mysql的目录

find / -name "mysql"

gg

rm -rf ***

 

 

3. 删除mysql用户、组

more /etc/passwd | grep mysql

more /etc/shadow | grep mysql

more /etc/group | grep mysql

 

userdel mysql

groupdel mysql

 

 

4. 删除配置信息

rm -rf /etc/my.cnf

rm -rf /etc/init.d/mysql

 

posted @ 2021-01-15 14:16  登风360  阅读(114)  评论(0编辑  收藏  举报