linuxmysql参数
开启MySQL服务后,使用MySQL命令可以登录。一般使用mysql -uroot -p即可。如果数据库不是本机,则需要加参数,常用参数如下:
1,-h,指定ip地址,默认为localhost
2,-u,指定用户名。
3,-p,指定密码,密码可以接在-p后面输入mysql -uroot -p123456。也也可以mysql -uroot -p回车等提示输入密码时输入,这样输入密码没有回显。
⑵ Linux中MySQL配置文件my.cnf参数说明
MySQL参数优化这东西不好好研究还是比较难懂的,其实不光是MySQL,大部分程序的参数优化,是很复杂的。MySQL的参数优化也不例外,对于不同的需求,还有硬件的配置,优化不可能又最优选择,只能慢慢的进行优化,需要不断的调试,才能达到不同环境的最优选择。
首先介绍一下MySQL配置文件中不同模块
[client] MySQL客户端应用模块,只有MySQL附带的客户端应用程序保证可以读取此模块下的内容。
[mysqld] MySQL服务端应用模块
MySQL配置文件在Windows下叫my.ini,在MySQL的安装根目录下;在Linux下叫my.cnf,该文件位于/etc/my.cnf。 可以查找下:find / -name my.cnf
my.cnf的文件内容:
参考文章 : https://www.cnblogs.com/anxz/p/3875760.html
https://www.cnblogs.com/anxz/p/4709417.html
https://www.cnblogs.com/anxz/p/3968308.html
⑶ linux mysql端口是多少
my.ini(Linux系统下是my.cnf),当mysql服务器启动时它会读取这个文件,设置相关的运行环境参数。
此文件中有一个参数是 port;
port = 3306 # 设置mysql客户端连接服务端时默认使用的端口
找到mysql运行目录下的my.ini(Linux系统下是my.cnf),查看此参数即可。
⑷ Linux MySQL5.7 初始密码
本文转自 ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
为了加强安全性,MySQL5.7为root用户随机生成了一个密码,在error log中,关于error log的位置,如果安装的是RPM包,则默认是 /var/log/mysqld.log 。
一般可通过 log_error 设置
可通过 # grep "password" /var/log/mysqld.log 命令获取MySQL的临时密码
其中 waQ,qR%be2(5 就是密码了
用该密码登录到服务端后,必须马上修改密码,不然会报如下错误:
如果只是修改为一个简单的密码,会报以下错误:
这个其实与validate_password_policy的值有关。
validate_password_policy有以下取值:
有时候,只是为了自己测试,不想密码设置得那么复杂,譬如说,我只想设置root的密码为123456。
必须修改两个全局参数:
首先,修改 validate_password_policy 参数的值
这样,判断密码的标准就基于密码的长度了。这个由 validate_password_length 参数来决定。
validate_password_length 参数默认为8,它有最小值的限制,最小值为:
这些参数,默认值均为1,所以 validate_password_length 最小值为4,如果你显性指定 validate_password_length 的值小于4,尽管不会报错,但 validate_password_length 的值将设为4。如下所示:
如果修改了 validate_password_number_count , validate_password_special_char_count , validate_password_mixed_case_count 中任何一个值,则 validate_password_length 将进行动态修改。
当然,前提是 validate_password 插件必须已经安装,MySQL5.7是默认安装的。
那么如何验证 validate_password 插件是否安装呢?可通过查看以下参数,如果没有安装,则输出将为空。
⑸ 在linux系统中,mysql 中的命令 -o 怎么用
MYSQL命令行参数的详细说明:Usage:mysql [OPTIONS] [database]
-?, --help #显示帮助信息并退出
-I, --help #显示帮助信息并退出
--auto-rehash #自动补全功能,就像linux里面,按Tab键出提示差不多
-A, --no-auto-rehash #默认状态是没有自动补全功能的。-A就是不要自动补全功能
-B, --batch #mysql不使用历史文件,禁用交互
--character-sets-dir=name #字体集的安装目录
--default-character-set=name #设置数据库的默认字符集
--column-type-info #结果集返回时,同时显示字段的类型等相关信息
-c, --comments #Preserve comments. Send comments to the server. The
default is --skip-comments (discard comments), enable
with –comments
-C, --compress #在客户端和服务器端传递信息时使用压缩
-#, --debug[=#] #bug调用功能
-D, --database=name #使用哪个数据库
--default-character-set=name #设置默认的字符集
--delimiter=name #设置默认命令结束符
-e, --execute=name #执行mysql的sql语句
-E, --vertical #垂直打印查询输出
-f, --force #如果有错误跳过去,继续执行下面的
-G, --named-commands #Enable named commands. Named commands mean thisprogram's
internal commands; see mysql> help . When enabled, the named commandscan be used from any line of the query, otherwise only from the first line,before an enter.
Disable with --disable-named-commands. This option is disabled by default.
-g, --no-named-commands
Named commands are disabled. Use * form only, or use named commands onlyin the beginning of a line ending with a semicolon (;) Since version 10.9 theclient now starts with this option ENABLED by default! Disable with '-G'. Longformat commands still work from the first line. WARNING: option deprecated;
use --disable-named-commands instead.
-i, --ignore-spaces #忽视函数名后面的空格.
--local-infile #启动/禁用LOAD DATA LOCAL INFILE.
-b, --no-beep #sql错误时,禁止嘟的一声
-h, --host=name #设置连接的服务器名或者Ip
-H, --html #以html的方式输出
-X, --xml #以xml的方式输出
--line-numbers #显示错误的行号
-L, --skip-line-numbers #忽略错误的行号
-n, --unbuffered #每执行一次sql后,刷新缓存
--column-names #查寻时显示列信息,默认是加上的
-N, --skip-column-names #不显示列信息
-O, --set-variable=name #设置变量用法是--set-variable=var_name=var_value
--sigint-ignore #忽视SIGINT符号(登录退出时Control-C的结果)
-o, --one-database #忽视除了为命令行中命名的默认数据库的语句。可以帮跳过日志中的其它数据库的更新。
--pager[=name] #使用分页器来显示查询输出,这个要在linux可以用more,less等。
--no-pager #不使用分页器来显示查询输出。
-p, --password[=name] #输入密码
-W, --pipe #Use named pipes to connect to server.
-P, --port=# #设置端口
--prompt=name #设置mysql提示符
--protocol=name #设置使用的协议
-q, --quick #不缓存查询的结果,顺序打印每一行。如果输出被挂起,服务器会慢下来,mysql不使用历史文件。
-r, --raw #写列的值而不转义转换。通常结合--batch选项使用。
--reconnect #如果与服务器之间的连接断开,自动尝试重新连接。禁止重新连接,使用--disable-reconnect。
-s, --silent #一行一行输出,中间有tab分隔
-S, --socket=name #连接服务器的sockey文件
--ssl #激活ssl连接,不激活--skip-ssl
--ssl-ca=name #CA file in PEM format (check OpenSSL docs, implies--ssl).
--ssl-capath=name #CA directory (check OpenSSL docs, implies --ssl).
--ssl-cert=name #X509 cert in PEM format (implies --ssl).
--ssl-cipher=name #SSL cipher to use (implies --ssl).
--ssl-key=name #X509 key in PEM format (implies --ssl).
--ssl-verify-server-cert #连接时审核服务器的证书
-t, --table #以表格的形式输出
--tee=name #将输出拷贝添加到给定的文件中,禁时用--disable-tee
--no-tee #根--disable-tee功能一样
-u, --user=name #用户名
-U, --safe-updates #Only allow UPDATE and DELETE that uses keys.
-U, --i-am-a-mmy #Synonym for option --safe-updates, -U.
-v, --verbose #输出mysql执行的语句
-V, --version #版本信息
-w, --wait #服务器down后,等待到重起的时间
--connect_timeout=# #连接前要等待的时间
--max_allowed_packet=# #服务器接收/发送包的最大长度
--net_buffer_length=# #TCP/IP和套接字通信缓冲区大小。
--select_limit=# #使用--safe-updates时SELECT语句的自动限制
--max_join_size=# #使用--safe-updates时联接中的行的自动限制
--secure-auth #拒绝用(pre-4.1.1)的方式连接到数据库
--server-arg=name #.
--show-warnings #显示警告
⑹ linux mysql 安装源码包时什么参数指定数据库目录位置,rpm 包 安装后如何更改数据库目录位置
1、安装cmake
tar zxf cmake-2.8.7.tar.gz
pushd cmake-2.8.7
./bootstrap && gmake && gmake install
popd
2、创建所需user及group及dir
groupadd mysql
useradd -g mysql mysql
mkdir -p /usr/local/mysql
mkdir -p /var/lib/mysql
chown -R mysql.mysql /usr/local/mysql /var/lib/mysql
3、安装mysql
tar zxf mysql-5.5.20.tar.gz
pushd mysql-5.5.20
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_EXTRA_CHARSETS:STRING=all \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DENABLED_LOCAL_INFILE=1 \
-DMYSQL_DATADIR=/var/lib/mysql \
-DMYSQL_USER=mysql
make;make install
popd
4、制作配置文件
cat > my.cnf << EOF
[mysqld]
datadir=/var/lib/mysql
user=mysql
socket=/var/lib/mysql/mysql.sock
#Disablingsymbolic-links is recommended to prevent assorted security risks
symbolic-links=0
#skip-networking
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
EOF
5、初始化数据库
cd /usr/local/mysql
./scripts/mysql_install_db --datadir=/var/lib/mysql --user=mysql
6、定制启动脚本
cp mysql-5.5.20/support-files/mysql.server /etc/init.d/mysqld
chmod +x /etc/init.d/mysqld
chkconfig mysqld on
/etc/init.d/mysqld start
7、修改管理员密码
./bin/mysqladmin -u root password 'password1'
8、rpm安装后更改mysql数据存放位置
vi /usr/local/mysql/my.cnf
修改
datadir=/var/lib/mysql
⑺ linux 下怎么优化mysql占用内存
Linux 进程通过 C 标准库中的内存分配函数 malloc 向系统申请内存,但是到真正与内核交互之间,其实还隔了一层,即内存分配管理器(memory allocator)。常见的内存分配器包括:ptmalloc(Glibc)、tcmalloc(Google)、jemalloc(FreeBSD)。MySQL 默认使用的是 glibc 的 ptmalloc 作为内存分配器。
内存分配器采用的是内存池的管理方式,处在用户程序层和内核层之间,它响应用户的分配请求,向操作系统申请内存,然后将其返回给用户程序。
为了保持高效的分配,分配器通常会预先向操作系统申请一块内存,当用户程序申请和释放内存的时候,分配器会将这些内存管理起来,并通过一些算法策略来判断是否将其返回给操作系统。这样做的最大好处就是可以避免用户程序频繁的调用系统来进行内存分配,使用户程序在内存使用上更加高效快捷。
关于 ptmalloc 的内存分配原理,个人也不是非常了解,这里就不班门弄斧了,有兴趣的同学可以去看下华庭的《glibc 内存管理 ptmalloc 源代码分析》【文末链接】。
关于如何选择这三种内存分配器,网上资料大多都是推荐摒弃 glibc 原生的 ptmalloc,而改用 jemalloc 或者 tcmalloc 作为默认分配器。因为 ptmalloc 的主要问题其实是内存浪费、内存碎片、以及加锁导致的性能问题,而 jemalloc 与 tcmalloc 对于内存碎片、多线程处理优化的更好。
目前 jemalloc 应用于 Firefox、FaceBook 等,并且是 MariaDB、Redis、Tengine 默认推荐的内存分配器,而 tcmalloc 则应用于 WebKit、Chrome 等。
⑻ linux下解压mysql提示“旧选项f需要参数”
意思是你要加个f参数
tar xvfz mysql.xx.tar.gz
这样解压
如果需要指定目录 后面加上路径 就可以了
⑼ linux下怎么连接mysql数据库
1、首先确保linux下mysql安装好,服务启动完之后,就可以开始连接数据库了。在终端输入“mysql -hlocalhost -uroot -p”,其中h参数是主机名,这里是本地就写localhost,也可以省略:
⑽ 怎样在linux终端输入mysql直接进入mysql
怎样在linux终端输入mysql直接进入mysql
1、在终端中输入mysql -u用户名 -p密码命令可以进行mysql命令行
2、如果密码有特殊字符就先mysql -u用户名 -p回车,然后提示输入密码后,再输入密码回车即可
3、mysql 其它参数说明:
mysql命令行参数
Usage: mysql [OPTIONS] [database] //命令方式
-?, --help //显示帮助信息并退出
-I, --help //显示帮助信息并退出