1,规划目录
安装目录:/usr/local/mysql
数据目录:/usr/local/mysql/data/data
2,创建用户
useradd mysql
3,解压二进制文件并移动到相应目录
tar -zxvf mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz
mv mysql-5.7.17-linux-glibc2.5-x86_64/* /usr/local/mysql/
4,创建data目录
mkdir -p /usr/local/mysql/data/data
5,修改权限
chown -R mysql.mysql /usr/local/mysql/
6, 初始化数据库
两种方式
第一种 初始化后会生成一个登录密码 在 cat /root/.mysql_secret,用于第一次登录
./bin/mysql_install_db --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/data
推荐第二种方式,初始化最后会有一个登录密码,请复制记住,用于第一次登录
./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/data --explicit_defaults_for_timestamp=true
7,把mysql服务脚本放到系统服务中
cp -a ./support-files/mysql.server /etc/init.d/mysqld
8,配置文件
vi /etc/my.cnf
需要注意的是
skip-networking这个参数配置了的话无法远程访问
启动后不监听端口
9,启动
service mysqld start
10,登录 修改密码 远程登录
./bin/mysql -u root -p
SET PASSWORD FOR 'root'@localhost = PASSWORD ('123456');
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
#update user set password=PASSWORD('123456') where user='root';
flush privileges;
11,设置防火墙
iptables -I INPUT -s 192.168.108.166 -p TCP --dport 3306 -j ACCEPT
iptables -I INPUT -s 192.168.108.165 -p TCP --dport 3306 -j ACCEPT
service iptables save
service iptables restart
12,查看启动状态
ps -ef |grep mysqld
ss -tlnp
加入开机自启
chkconfig --add mysqld
chkconfig mysqld on
chkconfig mysqld --list
13,导出导入表
一、导出数据库用mysqldump命令(注意mysql的安装路径,即此命令的路径):
1、导出数据和表结构:
mysqldump -u用户名 -p密码 数据库名 > 数据库名.sql
#/usr/local/mysql/bin/ mysqldump -uroot -p abc > abc.sql
敲回车后会提示输入密码
2、只导出表结构
mysqldump -u用户名 -p密码 -d 数据库名 > 数据库名.sql
#/usr/local/mysql/bin/ mysqldump -uroot -p -d abc > abc.sql
注:/usr/local/mysql/bin/ ---> mysql的data目录
二、导入数据库
1、首先建空数据库
mysql>create database abc;
2、导入数据库
方法一:
(1)选择数据库
mysql>use abc;
(2)设置数据库编码
mysql>set names utf8;
(3)导入数据(注意sql文件的路径)
mysql>source /home/abc/abc.sql;
方法二:
mysql -u用户名 -p密码 数据库名 < 数据库名.sql
#mysql -uabc_f -p abc < abc.sql