1、mysql安装
解压文件
tar -xvf mysql-5.7.22-linux-glibc2.12-x86_64.tar.gz
改名
mv -v mysql-5.7.22-linux-glibc2.12-x86_64 /usr/lcoal/mysql
再创建用户和用户组
groupadd mysql
useradd -m -r -g mysql mysql
passwd mysql
在mysql目录下创建data文件夹
mkdir data
将安装目录所有者及所属组改为mysql
chown -R mysql.mysql /usr/local/mysql
初始化数据库
/usr/local/mysql/bin/mysqld --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data --initialize
完成初始化后编辑配置文件 /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
#skip-grant-tables
#Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
lower_case_table_names=1
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
将mysql加入到服务
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
开机启动
chkconfig mysql on
启动mysql
service mysql start
设置mysql密码(因为在配置文件取消了密码验证,可以直接回车键)
mysql -u root -p
或者
/usr/local/mysql/bin/mysql -uroot -p
使用第二个命令是没有配置环境变量
export PATH=$PATH:/usr/local/mysql/bin
操作数据库设置密码
use mysql;
update user set authentication_string=password('你的密码') where user='root';
或者
set password=password("root");
flush privileges;
exit
将 /etc/my.cnf 中skip-grant-tables删除或注释掉
如果操作不了数据库可以再次修改下密码,具体什么原因我也不清楚
mysql -u root -p
alter user 'root'@'localhost' identified by'修改后的密码';
exit
开启ssl连接
mysql_ssl_rsa_setup --uid=mysql
重启服务
systemctl restart mysql
赋权必须ssl登录
alter user 'root'@'localhost' REQUIRE SSL;
登录
mysql -u root -p --ssl-mode=required
2、导出导入数据库
备份数据和表结构:
mysqldump -u 用户名 -p密码 数据库名 > 备份文件名
只备份表结构
mysqldump -u 用户名 -p密码 -d 数据库名 > 数据库名.sql
备份整个表
mysqldump -u root 数据库名 表名字>备份文件名;
还原数据库
方法一:
(1)选择数据库
mysql>use abc;
(2)设置数据库编码
mysql>set names utf8;
(3)导入数据(注意sql文件的路径)
mysql>source /home/abc/abc.sql;
方法二:
mysql -u用户名 -p密码 数据库名 < 备份文件