Linux安装MySQL
一、配置绿色版mysql/mariadb
在Linux平台下安装mysql/mariadb,下载tar.gz类型的压缩版mysql安装是首选,解压到/usr/local/mysql中,因为大多数配置默认是在这里,这样会给配置带来极大的简化。
groupadd mysql
useradd -g mysql mysql
chown -R mysql:mysql /usr/local/mysql
1,设置配置文件
vim /etc/my.cnf
[mysqld]
user=mysql #一定不能少,虽然不知道是做什么用的
datadir=/usr/local/mysql/data
default_authentication_plugin=mysql_native_password #使用mysql8以前的密码插件,以便navicat等工具能够正常连接
default-storage-engine=INNODB
character_set_server = utf8
[mysqld_safe]
character_set_server = utf8
[mysql]
default-character-set = utf8
[mysql.server]
default-character-set = utf8
[client]
default-character-set = utf8
2,mysql初始化
安装路径如果没有设为/usr/local/mysql,就需要修改support-files/mysql.server这个脚本中的许多路径了,很麻烦,因此建议将mysql放在/usr/local/mysql目录
如果建立过一个my.cnf文件并设置参数,这样初始化时就自动给使用这些参数了
./mysqld --initailize
如果没有建立my.cnf,可以这样设置初始化
./mysqld --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --initialize
3,启动mysql
安装好的mysql可以直接启动
./mysqld &
也可以设置mysql启动为系统启动方式,复制启动文件
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
/etc/init.d/mysqld start 或 service mysqld start
4,设置root密码
从大约5.7开始安装mysql时给出一个临时密码,这是登录root需要输入这个临时密码才能登录
mysql> alter user 'root'@'localhost' identified by 'root';
mysql> flush privileges;
5,配置完后可能本机能够连上,但其他机器连不上
is not allowed to connect to this MySQL server
这是因为没有开放mysql链接权限
我们发现,都是本地的这些用户才能访问
mysql> update user set host = '%' where user = 'root';
mysql> grant all privileges on *.* to root@'%' identified by 'root' with grant option;
mysql> flush privileges;
service mysql/mariadb restart
注意:
user表中只保留一个root@%用户,如果还存在root@127.0.0.1等,一定要删除,不然会出连接问题!
mysql> drop user root@127.0.0.1
二、配置安装版mysql/mariadb
1,安装
rpm在线安装:
yum install mariadb-server
rpm离线安装:
rpm -ivh mariadb-server.rpm
rpm查看安装位置:
rpm -ql marialdb
deb在线安装:
apt-get install mariadb-server
deb离线安装:
dpkg -i mariadb-server.deb
deb查看安装位置:
dpkg -L marialdb-server
2,初始化
使用dep包或rpm包安装,使用以下命令初始化即可:
mysql_secure_installation
执行后会有命令提示,设置root密码等,这种方式快速、方便,只是安装文件会分散到操作系统各个目录里,有些分散。
3,设置编码
设置完密码后,用root登录,查看一下数据库编码:
show variables like 'character_set_%'
如果其中有非utf8字符集,在配置文件中添加配置:
vim /etc/my.cnf.d/server.cnf