转自:
https://blog.csdn.net/weixin_38103350/article/details/80440902
中标麒麟操作系统,不可直接安装MySQL(centos7类似),不然会报各种各样的错误,由于其MySQL其配置文件 /etc/my.cnf已经存在,故:首先
更改配置文件:
mv /etc/my.cnf /etc/my.cnf.bak
下载MySQL5.7.22
下载MySQL :https://dev.mysql.com/downloads/mysql/5.7.html#downloads
版本:mysql-5.7.22-linux-glibc2.12-x86_64.tar.gz
解压文件(确保文件完整)
解压文件 tar -zxvf mysql-5.7.22-linux-glibc2.12-x86_64.tar.gz
复制文件 cp -r mysql-5.7.22-linux-glibc2.12-x86_64 /usr/local/mysql
或者先移动压缩文件再解压重命名也可以
(/usr/local/mysql 路径为mysql推荐安装路径,配置文件中默认的即为这个路径)
添加mysql用户和组
添加mysql组:groupadd mysql
添加mysql用户:useradd -r -g mysql mysql(添加完成后可用id mysql查看)
安装mysql
切到mysql目录:cd /usr/local/mysql
修改当前目录拥有者为mysql用户:chown -R mysql:mysql ./
安装数据库:/usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
执行完上述安装数据库命令后,会生成临时密码,复制以备后用:
执行以下命令创建RSA private key :/usr/local/mysql/bin/mysql_ssl_rsa_setup --datadir=/usr/local/mysql/data
修改当前data目录拥有者为mysql用户 :chown -R mysql:mysql data
配置my.cnf
cp /etc/my.cnf.bak /etc/my.cnf
[mysqld]
character_set_server=utf8
init_connect=‘SET NAMES utf8’
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
socket=/tmp/mysql.sock
[mysqld_safe]
lower_case_table_names = 1
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
添加开机启动: cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
修改mysqld:vim /etc/init.d/mysqld
添加路径 在46行
[plain] view plain copy
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
启动mysql客户端:service mysqld start 或者 systemctl start mysqld
添加mysql命令链接:# ln -s /usr/local/mysql/bin/mysql /usr/bin
启动mysql服务:service mysql start 或者 systemctl start mysql
· mysqld
SQL后台程序(即MySQL服务器)。要想使用客户端程序,该程序必须运行,因为客户端通过连接服务器来访问数据库。参见5.3节,“mysqld:MySQL服务器”。
启动MYSQL服务
· mysql
交互式输入SQL语句或从文件以批处理模式执行它们的命令行工具。参见8.3节,“mysql:MySQL命令行工具”。
(同配置文件有关)设置开机自动启动:chkconfig --add mysql 然后:chkconfig on
登录后修改密码:mysql -uroot -p
然后输入:上面初始化时的密码
修改默认密码
alter user ‘root’@‘localhost’ identified by ‘root’;
flush privileges; #刷新权限
GRANT ALL PRIVILEGES ON . TO ‘root1’@’%’ IDENTIFIED BY ‘root’ WITH GRANT OPTION; #授权新用户
完成
Linux下MySQL命令查找不到
转自:https://blog.csdn.net/ryan_van/article/details/78713526
[root@DB-02 ~]# mysql -u root
-bash: mysql: command not found
原因:这是由于系统默认会查找/usr/bin下的命令,如果这个命令不在这个目录下,当然会找不到命令,我们需要做的就是映射一个链接到/usr/bin目录下,相当于建立一个链接文件。
首先得知道mysql命令或mysqladmin命令的完整路径,比如mysql的路径是:/usr/local/mysql/bin/mysql,我们则可以这样执行命令:
# ln -s /usr/local/mysql/bin/mysql /usr/bin