Linux离线安装MySQL
1、下载tar包,可直接服务器在线下载
wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.22-linux-glibc2.12-x86_64.tar.gz
2、将mysql安装到/usr/local/mysql下
# 解压
tar -xvf mysql-5.7.22-linux-glibc2.12-x86_64.tar.gz
# 移动并重命名为mysql
mv mysql-5.7.22-linux-glibc2.12-x86_64 /usr/local/mysql ;
3、新建data目录
mkdir /usr/local/mysql/data;
4、新建mysql用户、mysql用户组
# mysql用户组
groupadd mysql;
# mysql用户
useradd mysql -g mysql;
5、将/usr/local/mysql的所有者及所属组改为mysql
chown -R mysql:mysql /usr/local/mysql;
6、配置
/usr/local/mysql/bin/mysql_install_db --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data
(mysql2.7的初始化)
/usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --initialize
如果出现如下的报错,需要安装libaio的包。
# 编辑/etc/my.cnf
vi /etc/my.cnf ;
编辑内容如下:
[mysqld] datadir=/usr/local/mysql/data basedir=/usr/local/mysql socket=/tmp/mysql.sock user=mysql port=3306 character-set-server=utf8 # 是否区分大小写,0:区分大小写(默认), 1:不区分大小写 lower_case_table_names=1 # No password validation is required skip-grant-tables # Disabling symbolic-links is recommended to prevent assorted security risks symbolic-links=0 [mysqld_safe] log-error=/var/log/mysqld.log pid-file=/var/run/mysqld/mysqld.pid
[client]
default-character-set=utf8
socket=/tmp/mysql.sock
7、开启服务
# 把msql的脚本文件拷到系统的启动目录下
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
#将mysql加到启动服务列表里
chkconfig --add mysql
# 开机自启
chkconfig mysql on
# 启动mysql
service mysql start
8、设置密码(重置密码)
# 登录(由于/etc/my.cnf中设置了取消密码验证,所以此处密码任意)
/usr/local/mysql/bin/mysql -u root -p;
# 操作mysql数据库
>>use mysql; # 修改密码 Root@1234 >>update user set authentication_string=password('Root@1234') where user='root'; >>flush privileges; >>exit;
9、将/etc/my.cnf中的skip-grant-tables删除
vi /etc/my.cnf ;
将下面该行删除或者注释掉
# No password validation is required
# skip-grant-tables
10、登录再次设置密码(不知道为啥如果不再次设置密码就操作不了数据库了) Root@1234
/usr/local/mysql/bin/mysql -u root -p;
修改密码:
>>ALTER USER 'root'@'localhost' IDENTIFIED BY 'Root@1234';
>>exit;
11、允许远程连接
/usr/local/mysql/bin/mysql -u root -p;
设置允许远程连接
>>use mysql; >>update user set host='%' where user = 'root'; >>flush privileges; >>exit;
12、添加快捷方式
ln -s /usr/local/mysql/bin/mysql /usr/bin ;
# 如果使用mysqldump进行备份,需要创建快捷方式
ln -s /usr/local/mysql/bin/mysqldump /usr/bin ;
13、连接数据库
mysql -u root -p ;
## 查看MySQL版本
> select version();
## 查看当前状态(里面也有版本信息)
> status;
14、MySQL命令执行sql文件的两种方法
方法一、在 linux下使用命令执行。
【Mysql的bin目录】mysql –u用户名 –p密码 –D数据库<【sql脚本文件路径全名】
示例: mysql –uroot –p123456 -Dtest< test.sql
注意:
A、如果在 sql 脚本文件中使用了 use 数据库,则 -D数据库 选项可以忽略
B、如果【Mysql的bin目录】中包含空格,则需要使用“”包含,如:“C:Program FilesMySQLinmysql” –u用户名 –p密码 –D数据库<【sql脚本文件路径全名】
C、如果 sql 没有创建数据库的语句,而且数据库管理中也没有该数据库,那么必须先用命令创建一个空的数据库。
方法二、进入MySQL命令行,使用 source 命令执行
Mysql>source 【sql脚本文件的路径全名】
或 Mysql>. 【sql脚本文件的路径全名】
示例:source C: est.sql 或者 . C: est.sql
打开 MySQL Command Line Client,输入数据库密码进行登录,然后使用 source 命令或者 .
15、导入和导出
(1)、MySQL导出
mysqldump –uroot –p123456 test_db >/tmp/test.db.sql;
(2)、MySQL导入
mysql –uroot –p123456 test_db < /tmp/test.db.sql ;
本文来自博客园,作者:业余砖家,转载请注明原文链接:https://www.cnblogs.com/yeyuzhuanjia/p/16524650.html